我们已经知道,如何设置defaultProps.
TestComponent.defaultProps = {
isTest: true
};
Run Code Online (Sandbox Code Playgroud)
但我经常使用道具作为对象类型.
在父母,
render(){
let sample = {
isTest : true,
isLoggedIn : true
}
return (
<div>
<TestComponent sample = {sample} />
</div>
)
}
Run Code Online (Sandbox Code Playgroud)
在子组件,我想设置isLoggedIn
到false
默认.如果未设置(或未从Parent传递)isLoggedIn
,则默认值为true
但我不知道如何设置defaultProps object type
TestComponent.defaultProps = {
sample : {
isLoggedIn: false
}
};
Run Code Online (Sandbox Code Playgroud)
这该怎么做 ?
你的代码
TestComponent.defaultProps = {
sample : {
isLoggedIn: false
}
};
Run Code Online (Sandbox Code Playgroud)
应该管用。
对于类型验证(propTypes),使用React.PropTypes.shape
嵌套对象道具,如下所示:
React.PropTypes.shape({
isLoggedIn: React.PropTypes.bool
})
Run Code Online (Sandbox Code Playgroud)
查看文档:https : //facebook.github.io/react/docs/typechecking-with-proptypes.html#react.proptypes
归档时间: |
|
查看次数: |
10717 次 |
最近记录: |