Eri*_*sen 6 javascript reactjs react-proptypes
对于我的项目,最好在组件属性中传递空值以指示未指定的值(如果愿意,则为“已知未知”)。按照这种方式使用null是我们团队的惯例。
通过组件propTypes定义,我想要求为prop传递一个值,但允许它为null(不是未定义),而无需React prop类型验证触发警告。
因此,以I / O风格重述一下:
如何完成此行为?
一种想法是编写.isRequired的替代方案,例如.isDefined,它不会对空值发出警告,但我不知道如何在不派生或放弃prop-types库的情况下执行此操作。
我不确定您是否可以使它以可链接的方式工作(我考虑了大概两分钟),但是也许您可以使用自定义验证程序?
function allowNull(wrappedPropTypes) {
return (props, propName, ...rest) => {
if (props[propName] === null) return null;
return wrappedPropTypes(props, propName, ...rest);
}
}
MyComponent.propTypes = {
nullOrNumber: allowNull(PropTypes.number.isRequired)
};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2763 次 |
| 最近记录: |