reactjs - TextInput 样式 Props 类型 React Native

标签 reactjs typescript react-native

我正在尝试将样式作为 Prop 传递给我的自定义 TextInput 组件。我发现 this在 props 中输入按钮和标签样式的代码片段:

import {  
  StyleProp,
  Text,
  TextStyle,
  View,
  ViewStyle
} from 'react-native';

interface IProps {
 label: string;
  buttonStyle?: StyleProp<ViewStyle>;
  labelStyle?: StyleProp<TextStyle>;
}
// rest 

但我没有找到 TextInput 的任何内容,也没有找到任何有关 StyleProp 的文档 那么将样式传递给 TextInput 的正确方法是什么?

最佳答案

我正在检查TextInputProps接口(interface),我发现TextStyle也用于TextInput:

style?: StyleProp<TextStyle>;

因此可以通过以下方式使用它:

import {StyleSheet, TextInput, TextInputProps , StyleProp , 
TextStyle } from 'react-native';

type Props = {
style?: StyleProp<TextStyle>,
// or 
style?: Pick<TextInputProps, "style">

};

const Input: React.FC<Props> = ({style: propStyles}) =>
    <TextInput
      style={ [styles.input, propStyles] }
    />


const styles = StyleSheet.create({
  input: {...}, 
});

关于reactjs - TextInput 样式 Props 类型 React Native,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66939521/

相关文章:

react-native - 无论捕捉速度如何,都需要在 Flatlist 中滚动单个项目 View

node.js - 失败将 RemoteDev 监视器注入(inject) React Native 调试器

javascript - React.js : e. PreventDefault(…) 不是一个函数

angular - 在Angular中导入模块时如何从模块自动运行服务?

typescript - Dart中的递归对象类型?

react-native - axios 请求后警报消息和按钮中的错误

javascript - 为什么我无法访问函数属性?

javascript - 使用 React-Router-Config 设置页面标题

javascript - 将子对象移动到 root 之前,它是 json 数组中的原始父对象

angular - 更改检测似乎在动态实例化的组件中不起作用