在我的this API中,我想从推荐的配置中获取值,但有些值为null,所以我的应用程序给了我一个错误:
null不是对象
下面是我的代码:
let page1 = this.state.dataSource1.map((val, key) => {
// if (val.platforms[0].requirements_en.minimum != null) {
// }
return (
{val.platforms[0].requirements_en.recommended ==! null ?
<Text style={styles.name}>minimal configuration : {val.platforms[0].requirements_en.recommended}</Text>
:
<Text>Nothing</Text>
}
)
})
字符串
我想说,如果值不为空,给我发送数据,否则一个简单的文本,但它不起作用.
1条答案
按热度按时间uidvcgyl1#
你的代码中有一些问题。
首先,你返回了一个对象,但你没有指定一个键。
因此,您要么需要添加一个,要么更有可能这是一个错误,您需要删除
return
中的花括号。第二,你得到了一个错字
==!
而不是!==
。第三,关于你的问题,你需要检查API返回的每个元素是否存在可选的链接操作符,如下所示:
val?.platforms[0]?.requirements_en?.recommended
个为了对此进行扩展,如果
?.
之前的部分是null
或undefined
,则可选的链接运算符将返回undefined
。在你的例子中,有时
requirements_en
是null,这就是为什么你得到错误的原因。字符串