PropTypes正在从主React库中删除。我的项目所需要的只是React.PropTypes.any.isRequired
,而不是别的。
是否可以将此验证器编写为独立函数,以便我可以避免添加新的依赖项? React期望从这个功能中得到什么?
谢谢!
答案 0 :(得分:1)
查看docs,验证器只不过是:
customProp: function(props, propName, componentName) {
if (!/matchme/.test(props[propName])) {
return new Error(
'Invalid prop `' + propName + '` supplied to' +
' `' + componentName + '`. Validation failed.'
);
}
},
因此,如果您检查null
,那就是模拟Any.isRequired
所需的一切。
答案 1 :(得分:1)
isRequired检查支柱是undefined
还是null
并在其中任何一个匹配时抛出错误。在这里参考isRequired的来源:
https://github.com/facebook/prop-types/blob/master/factoryWithTypeCheckers.js#L191