如何在 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
}
我正在使用代码 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
}