React native 对于react原生样式是否有任何流类型定义?
我正在制作一个react本机组件,并使用Flow定义如下属性类型:React native 对于react原生样式是否有任何流类型定义?,react-native,flowtype,React Native,Flowtype,我正在制作一个react本机组件,并使用Flow定义如下属性类型: type Props = { text: string, textStyle: object } textStyle: TextStyle 然后,这些属性被传递到我的组件中的文本组件。react native是否有任何流类型定义允许我执行以下操作: type Props = { text: string, textStyle: object } textStyle: TextStyle 现
type Props = {
text: string,
textStyle: object
}
textStyle: TextStyle
然后,这些属性被传递到我的组件中的文本组件。react native是否有任何流类型定义允许我执行以下操作:
type Props = {
text: string,
textStyle: object
}
textStyle: TextStyle
现在,Flow将能够检查textStyle值是否只包含允许用于文本组件样式的键
我看到有TypeScript(React.TextStyle)的接口定义,但找不到Flow的任何定义。更新3: 目前的最佳做法是:
import type {
ViewStyleProp,
TextStyleProp,
ImageStyleProp,
} from 'react-native/Libraries/StyleSheet/StyleSheet';
更新2:以下内容使事情变得更简单,从今天起,flowtype样式如下
type StyleValue = {[key: string]: Object} | number | false | null;
type StyleProp = StyleValue | Array<StyleValue>;
以下讨论:更新
StyleObj
不再是样式表类型的一部分
现在输入:
来自“react native/Libraries/StyleSheet/StyleSheetTypes”的{LayoutStyle、TransformStyle、ShadowStyle、ViewStyle、TextStyle、ImageStyle、危险的不精确样式}代码>
在您的情况下,您应该:
从'react native/Libraries/StyleSheet/StyleSheetTypes'导入{TextStyle}代码>按照您的建议,我看到了多态类型的视图样式应用程序的需求。(可使用`*`进行推断)
。编辑通过导入ViewStyleProp
而不是ViewStyle
来解决它<代码>从“react native/Libraries/StyleSheet/StyleSheet”导入类型{ViewStyleProp}
应该是{[key:string]:Object | number | string | null}
吗?@AMB下面的答案更为最新(截至2018-09-13)。