我想将默认值设置为size prop,但它是required prop的子级,所以我得到了错误。除了在eslint中禁用规则之外,还有其他解决方法吗?
static propTypes = {
widget: PropTypes.shape({
config: PropTypes.shape({
size: PropTypes.string
}).isRequired
}).isRequired,
};static defaultProps = {
widget: PropTypes.shape({
config: PropTypes.shape({
size: 's'
})
})
}Eslint错误
defaultProp "widget" defined for isRequired propType.eslint(react/default-props-match-prop-types)发布于 2019-09-05 19:18:06
第一次观察,您可以简单地设置默认值,如下所示:
widget: {
config: {size: 's'}
}其次,根据错误,没有为必填字段设置缺省值的点,因为当调用者未通过defaultProps提供缺省值时,将且必须设置缺省值
因此,可以将widget propTypes设置为optional,这样错误就不会出现,但是当通过props传入无效的形状时,形状将保持不变
https://stackoverflow.com/questions/57804142
复制相似问题