gpt4 book ai didi

javascript - react defaultProps 不工作

转载 作者:可可西里 更新时间:2023-11-01 02:30:58 26 4
gpt4 key购买 nike

我可能在做一些愚蠢的事情,但我无法让 defaultProps 起作用。

export default class MyClass extends Component{
static propTypes = {
name: React.PropTypes.string.isRequired,
field: React.PropTypes.object.isRequired
}

static defaultProps = {
field: { value: '', errors: [] }
}

render() {
// blah blah
}
}

我的代码依赖于 this.props.field.valuethis.props.field.errors.length 我所有的测试都被 TypeError: 'undefined' is not an object (evaluating 'this.props.field.errors.length'),我的默认 Prop 不应该给它一个默认值吗?最初,我的 field Prop 是一个空对象。

最佳答案

Initially, my field prop is an empty object.

只有在没有为 prop 传递值时才会使用默认 props。这是浅合并,而不是深度合并。

来自docs (强调我的):

The result of getDefaultProps() will be cached and used to ensure that this.props.value will have a value if it was not specified by the parent component.

关于javascript - react defaultProps 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33262714/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com