React PropTypes:允许一个 prop 使用不同类型的 PropTypes

新手上路,请多包涵

我有一个组件接收它的大小的道具。 prop 可以是字符串或数字,例如: "LARGE"17

我可以让 React.PropTypes 知道这可以是 propTypes 验证中的一个或另一个吗?

如果我没有指定类型,我会收到警告:

道具类型 size 无效;它必须是一个函数,通常来自 React.PropTypes。

 MyComponent.propTypes = {
    size: React.PropTypes
}

原文由 Kevin Amiranoff 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 827
2 个回答

出于文档目的,最好列出合法的字符串值:

 size: PropTypes.oneOfType([
    PropTypes.number,
    PropTypes.oneOf([ 'SMALL', 'LARGE' ]),
]),

原文由 cleong 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进