我正在使用代码this.props.params.key
从url读取params,param名称为key.
来自我正在获取的ESlint。
[eslint]'params'在道具验证(反应/道具类型)中缺失
如何解决此问题?如何在道具中保护参数?
对于来自道具的验证变量,例如this.props.size
我正在使用:
CLASSNAME.propTypes = {
size: PropTypes.string.isRequired,
}
对于params?
感谢您的帮助
编辑: params的密钥是MD5哈希。
答案 0 :(得分:1)
您可以定义一个对象" shape"对于params:
params: PropTypes.shape({
key: PropTypes.string.isRequired
})
所以你的完整的proptypes将是:
CLASSNAME.propTypes = {
size: PropTypes.string.isRequired,
params: PropTypes.shape({
key: PropTypes.string.isRequired
}) // add .isRequired here if "params" is required
}
答案 1 :(得分:0)
CLASSNAME.propTypes = {
param: PropTypes.object.isRequired,
}
这应解决警告