Javascript react'中的销毁es6默认值;道具
Javascript react'中的销毁es6默认值;道具,javascript,reactjs,Javascript,Reactjs,在componentB的构造函数中,我可以 const{from,to}=this.props但是我的from-to值是可选的。我做不到 this.state={from,to}如果它们为或空。有没有办法设置销毁的默认值 如果(从&&to){},我可以做,,但我想知道在react中处理可选道具的最佳方法是什么。考虑使用类型检查和默认道具为您期望的道具设置默认值。请参阅此处的文档。 在你的情况下,你可以定义 //declare default Props expected by app Comp
在componentB的构造函数中,我可以
const{from,to}=this.props
但是我的from-to值是可选的。我做不到
this.state={from,to}
如果它们为或空。有没有办法设置销毁的默认值
如果(从&&to){},我可以做
,
,但我想知道在react中处理可选道具的最佳方法是什么。考虑使用类型检查和默认道具为您期望的道具设置默认值。请参阅此处的文档。
在你的情况下,你可以定义
//declare default Props expected by app
ComponentB.propTypes = {
from: PropTypes.string,
to: PropTypes.string.isRequired
};
//set our default values
ComponentB.defaultProps = {
to:"0/0/0"
from:"0/0/0"
};
考虑到这里,我使用了string,并声明需要
to
属性,但是from没有isRequired标志。注意,我在这里使用了字符串,但还有许多其他类型的字符串可以使用 使用默认道具将默认值设置为“to”和“from”变量
Component.defaultProps={
从:“28/12/1992”,
致:“28/12/1992”
};代码>您可以使用以下两种方式之一:
1。在分解过程中为变量指定默认值,如下所示:
const { from = 'abc', to ='abc' } = this.props;
如果this.props
不包含任何键,它将采用默认值“abc”
2.使用defaultProps
为props变量指定默认值,如下所示:
ComponentName.defaultProps = {
from: 'abc',
to: 'abc'
};
从父组件传递的所有道具
将被分配这些默认值
检查此示例:
varobj={a:1,b:2,c:3};
var{a=5,b=5,d=5}=obj;
控制台日志(a、b、d)代码>