Abd*_*UMI 4 javascript double constraints reactjs
completed: React.PropTypes.number,
Run Code Online (Sandbox Code Playgroud)
我可以props在React组件中指定数字的最小值和最大值.
期待如下:
completed: React.PropTypes.numberBetween(min, max),
Run Code Online (Sandbox Code Playgroud)
我生成一个数组来指定范围
尝试:
completed: React.PropTypes.oneOf(Array.from({length: max -min+1, (v, k) => k + min})),
Run Code Online (Sandbox Code Playgroud)
但是,我希望 completed道具也接受浮动,而现在它只接受整数.
如何将以下约束组合在一起:
prop 是数字(整数,浮点数,双数,......任意数字)
在MIN和MAX之间
您可以使用自定义验证.
completed: function(props, propName, componentName) {
if(props[propName] < MIN || props[propName] > MAX) {
return new Error('Invalid');
}
}
Run Code Online (Sandbox Code Playgroud)
通过写一个Custom Props Validator,你可以实现这一点.试试这个:
num: function(props, propName, componentName) {
if(typeof props[propName] != 'number'){
return new Error ('Invalid type of `' + propName + '` supplied to' + ' `' + componentName + '`. Validation failed.');
}else if (props[propName] < MIN || props[propName] > MAX) {
return new Error('Invalid prop `' + propName + '` supplied to' + ' `' + componentName + '`. Validation failed.');
}
},
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4297 次 |
| 最近记录: |