我注意到 React 组件有一个 type.propTypes 对象,它将所有 propTypes 作为键。

例如,

Component.propTypes = { initialCount: React.PropTypes.number }

好像

reactjs - 获取 React propType 名称、类型和 isRequired-LMLPHP

在 Chrome 开发工具中。所以我可以使用
Object.keys(component.type.propTypes)

但是我也可以获取 proptypes 类型以及是否需要它?

最佳答案

并不真地。如果您检查 ReactPropTypes.js validation methods exported 使用私有(private)范围内的 expectedType

看看 ReactElementValidator.js 看看它如何调用 propType validation 也很有趣。

如果您想针对原始类型进行测试,您可能可以使用假 Prop 对验证方法进行迭代调用并捕获错误,直到它不抛出为止,但我认为这不是您所追求的。

关于reactjs - 获取 React propType 名称、类型和 isRequired,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33790631/

10-12 15:50