【问题标题】:Custom validator in prop types not working as expected道具类型中的自定义验证器无法按预期工作
【发布时间】:2020-11-16 10:07:08
【问题描述】:

自定义验证器在 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,而不是handlRate。

标签: reactjs react-proptypes


【解决方案1】:

在摸索了将近一个小时后,这只是一个错字。它不应该是 handlRate,而是 handleRate。始终仔细检查您的代码!

【讨论】:

    猜你喜欢
    • 2021-05-19
    • 2011-08-16
    • 2020-12-26
    • 1970-01-01
    • 2011-12-06
    • 1970-01-01
    • 1970-01-01
    • 2019-10-01
    • 1970-01-01
    相关资源
    最近更新 更多