我是反应中的新手。
getDefaultProps () {
return {
backgroundColor: 'gray',
height: 200,
width: 200
}
},
getDefaultProps
和getInitialState
的价值相同:
getInitialState () {
return {
backgroundColor: 'gray',
height: 200,
width: 200
}
},
两者之间的逻辑差异是什么。哪个应该覆盖或哪个将首先执行。
感谢。
答案 0 :(得分:5)
<强> getInitialState 强>
**getInitialState()**
在组件之前调用一次
安装。返回值将用作初始值
this.state。注意:此方法在扩展的ES6类组件上不可用 React.Component。有关更多信息,请阅读我们的文档 关于ES6课程。
<强> getDefaultProps 强>
**getDefaultProps()**
调用一次并在类中缓存
被建造。如果是,则映射中的值将在this.props上设置
prop组件未指定prop(即使用in
检查)。getDefaultProps()
返回的对象将被共享
实例,未复制。答案 1 :(得分:3)
getDefaultProps 是默认道具,如果你没有注入这个道具,它就会起作用。
在安装组件之前,getInitialState 用于ini状态。
事实上,道具和州之间的区别是什么,一旦你理解了它们的差异,它们的默认值就会很容易理解。
答案 2 :(得分:0)
getDefaultProps()
适用于属性。
getInitialState()
适用于各州。