1
我有一个组件需要一个包含子组件的syling的属性。我想确保propTypes
正确验证它的类型。我可以从React Native代码中得知它有一个ViewStylePropTypes
模块,但是我似乎无法找到它在哪里/是否暴露。验证React Native中的样式属性类型
我想知道的是,在不重新发明轮子的情况下对此进行验证的正确方法是什么?
我有一个组件需要一个包含子组件的syling的属性。我想确保propTypes
正确验证它的类型。我可以从React Native代码中得知它有一个ViewStylePropTypes
模块,但是我似乎无法找到它在哪里/是否暴露。验证React Native中的样式属性类型
我想知道的是,在不重新发明轮子的情况下对此进行验证的正确方法是什么?
要强制造型限制为PropTypes
只需使用下面,取决于你是什么样的渲染类型的组件:
MyComponent.propTypes = {
/**
* Style to be applied to the containing <View>
*/
buttonStyle: View.propTypes.style,
/**
* Style to be applied to the inner <Text>
*/
textStyle: Text.propTypes.style
}
例如Text.propTypes.style
将展示当border
在textStyle
属性定义的YellowBox警告。
注:这也将导致一个无效的样式属性渲染Text
一个组件内出现时,经常Failed prop type supplied to Text...
警告。 propTypes
验证允许您的自定义组件同时验证这一点,为您提供更好的粒度。
谢谢你,我真的很无聊,我没有想到这一点。 – Lee
没问题,这个比较好藏! – G0dsquad
@ G0dsquad是否仍然是有效的解决方案?我得到警告:View.propTypes已被弃用,并将在未来版本的ReactNative中被删除。使用ViewPropTypes代替.' dev控制台中的错误。 – Wojtek