如何在 React 中使用 props 验证参数

How to validate params using props in React

我正在使用代码 this.props.params.key 从 url 读取参数,参数名称是 key. 我从 ESlint 得到。

[eslint] 'params' is missing in props validation (react/prop-types)

如何解决这个警告?如何验证 props 中的参数?

为了验证来自 props 的变量,例如 this.props.size 我正在使用:

CLASSNAME.propTypes = {
    size: PropTypes.string.isRequired,
}

参数呢?

感谢您的帮助

编辑: 来自 params 的密钥是 MD5 哈希。

CLASSNAME.propTypes = {
    param: PropTypes.object.isRequired,
}

这应该可以解决警告

您可以为参数定义一个对象"shape":

params: PropTypes.shape({
    key: PropTypes.string.isRequired
})

所以你完整的道具类型是:

CLASSNAME.propTypes = {
    size: PropTypes.string.isRequired,
    params: PropTypes.shape({
        key: PropTypes.string.isRequired
    }) // add .isRequired here if "params" is required
}