条件必选getInitialState- if value为null
Conditional getInitialState- if value null
我在反应中的getInitialState有一些麻烦。我有一些数据到达我的道具,但它并不总是有键"text"。
如果它找不到props字段"text"我想给它一个空值
我基本上想说' this.props.photo.info[0].text或者如果不存在,显示'
我尝试了
下面给出一个无效的props错误:
getInitialState() {
return {
value: ((this.props.photo && this.props.photo.info && this.props.photo.info[0].text) || '')
返回相同的错误:
value:this.props.photo.info[0].text || 'empty'
如果我做下面的操作,所有返回的是[Object, Object]
,这让我认为它是从第一个this.props.photo或.info返回值(即不是一直到info[0].text)
(this.props.photo || this.props.photo.info || this.props.photo.info[0])
这是我的json数据在props
的例子 {
"title": "Item 1",
"info": [
{
"text": "<h1> I'm a real value </h1> <br/> <p> Not always here</p>",
}
],
},
{
"title": "Item 2",
"info": [],
},
我可以看到为什么你的第二个例子将是[对象对象],但第一个看起来像它应该工作给我,但你会得到一个错误,如果没有info[0]
。试试下面的方法?-
getInitialState() {
return {
value: ((this.props.photo && this.props.photo.info && this.props.photo.info[0] && this.props.photo.info[0].text) || '')
};
}
我经常使用默认值,它们可以以一种非常优雅的方式提供默认值
相关文章:
- Date.UTC() gets value null
- React select with value null
- 在JavasScript中是否有任何时间当“!value ?null : value[0]“ 不等同于 ”value ?
- Microsoft JScript 运行时错误:无法获取属性“value”的值:对象为 null 或未定义
- javascript文档.getElementById('').value返回null
- GetElementByID returns null value
- 条件必选getInitialState- if value为null
- 'null's number value acting differently
- ajax() considering value null jQuery
- 在angularjs中,如果value为null,移除href属性
- if(value == null) vs if(null == value)
- 不能设置property 'value'输入为null
- JQuery -禁用表单,除非value = n't NULL
- 不能设置property 'value'javascript中的null
- javascript value is null
- 不能设置property 'value'当使用getElementById时,返回null
- JavaScript检查value是否只有undefined、null或false
- HTML Selection - Javascript "this.value" null
- $("value") is null -> jQuery
- 如何在AngularJS中将硬编码的选择值设置为value而不是null