我有一个这样的对象:
"data": [
{
"key1": "value1";
"satisfaction": {
"yes": 0,
}
},
{
"key2": "value2";
"satisfaction": {
"yes": 4,
}
}
]
我需要制作一个* ngIf语句,只有当" satisfaction.yes
"时才会显示键(key1和key2)的值。退出(大于0)。这是动态生成的,我永远不会知道我可能会得到。
如何迭代satisfaction[]
数组,如果它大于0(存在)显示key1
,key2
值?什么是最好的方式?
感谢。
编辑:完成此操作后,我需要传递应下载/导出密钥的参数..
答案 0 :(得分:1)
您可以在阵列上使用forEach
循环,并首先检查satisfaction.yes
是否> 0然后显示其他键的值。
var obj = {
"data": [{
"key1": "value1",
"satisfaction": {
"yes": 0,
}
}, {
"key2": "value2",
"satisfaction": {
"yes": 4,
}
}]
}
obj.data.forEach(function(o) {
if (o.satisfaction.yes > 0) {
Object.keys(o).forEach(function(e) {
if (e != 'satisfaction') console.log(o[e])
})
}
})
答案 1 :(得分:1)
在构造函数中使用display: none
。
注意:对象属性名称this.data.filter(v => v.satisfaction.yes);
必须相同,否则您将无法执行key
循环。
<强> Working plunker 强>