道具类型中的自定义验证器未按预期工作
Custom validator in prop types not working as expected
自定义验证器不适用于 prop-types
我正在向 npm 发布一个 React 组件,并且我正在使用 prop-types 来验证我的组件的 props。我的道具都是可选的,但是如果启用了某个道具,则另一个道具将成为必需的。我正在尝试使用自定义验证器 (https://reactjs.org/docs/typechecking-with-proptypes.html) 来实现这一点,但它没有按预期工作。
我试过的
Component.propTypes = {
interactive: PropTypes.boolean,
handlRate: function (props, propName) {
if (props['interactive'] === true && typeof(props[propName]) !== 'function')
return new Error("Please provide a handleRate function!");
if (!!props[propName] && typeof(props[propName]) !== 'function')
return new Error("handleRate should be a function!");
},
}
挠了挠头将近一个小时后,这只是一个错字。不应该是handlRate,而是handleRate。始终仔细检查您的代码!
自定义验证器不适用于 prop-types
我正在向 npm 发布一个 React 组件,并且我正在使用 prop-types 来验证我的组件的 props。我的道具都是可选的,但是如果启用了某个道具,则另一个道具将成为必需的。我正在尝试使用自定义验证器 (https://reactjs.org/docs/typechecking-with-proptypes.html) 来实现这一点,但它没有按预期工作。
我试过的
Component.propTypes = {
interactive: PropTypes.boolean,
handlRate: function (props, propName) {
if (props['interactive'] === true && typeof(props[propName]) !== 'function')
return new Error("Please provide a handleRate function!");
if (!!props[propName] && typeof(props[propName]) !== 'function')
return new Error("handleRate should be a function!");
},
}
挠了挠头将近一个小时后,这只是一个错字。不应该是handlRate,而是handleRate。始终仔细检查您的代码!