我对ngIf指令有疑问。
我的应用程序中有一些角度材质切换是动态生成的,它们都具有特定的ID。我想知道,我知道使用ngIf指令可以在页面上有条件地显示那些元素。我正在将ngIf用于其他函数,但是我对如何检查元素的ID是否存在于数组中有些困惑。
数组看起来像这样:
["fc-vis", "fc-bis", "fc-dis"]
和我所有的切换都有ID:fc-vis / fc-bis ...依此类推。
我尝试使用ngIf,但我不知道如何在条件中发送元素的ID ...否则我可能做错了事
我正在尝试做的事情是这样的:
*ngIf="object.id in myArrayList"
或
*ngIf="checkIfExists(object.id)"
关于如何在条件中使用对象的id来检查它是否存在于该数组中的任何想法?
答案 0 :(得分:4)
您可以在此处使用数组includes()
方法,
*ngIf="myArrayList.includes(object.id)"
答案 1 :(得分:2)
您还可以使用Array indexOf()方法,如果元素不在数组中,则返回-1:
在你的ts-
const myArray = ["fc-vis", "fc-bis", "fc-dis"]
在模板中-
*ngIf="myArray.indexOf(object.id) > -1"
使用templateRef获取元素的ID,例如:
<div id="fc-vis" #myId>
<p *ngIf="myArray.indexOf(myId?.id) > -1">{{myId.id}} working </p>
</div>