我循环数据 这是react.js / jsx 如果我要拉100个项目,则没有一个会因为一个未定义而显示。我只是希望它显示为“0”,如果它是未定义的,并显示它是否存在大小。
错误:无法读取未定义的属性大小。
数据示例
Item={
color:blue,
size:medium,
}
Item={
color:red
}
我正在通过数据进行映射。
我基本上是这样做的:
return items.map((item, i) => {
return( {item.size})
我也试过{item.size? “itWorks”:“0”}作为测试,我得到同样的错误。
答案 0 :(得分:1)
错误是:
错误:无法读取未定义的属性大小
这意味着item
是undefined
,
因此,您必须检查item
和item.size
。
答案 1 :(得分:1)
最好使用object.hasOwnProperty('property')
检查您的对象是否具有特定属性。对于你的情况是:
{item.hasOwnProperty('size') ? "itWorks" : "0"}
答案 2 :(得分:1)
你应该这样做,
return (
items&& items.map(function(item,id){ .....}))
因此当items数组有一定长度时循环会通过,否则它会退出