Javascript *数组中存在ngIf值
我有一个关于ngIf指令的问题 我的应用程序中有一些动态生成的角度材质切换,它们都有一个特定的id。我想知道,我知道使用ngIf指令可以有条件地在我的页面上显示这些元素。我正在为其他函数使用ngIf,但对于如何检查数组中是否存在元素的id,我有点不知所措 该阵列的外观如下所示:Javascript *数组中存在ngIf值,javascript,angular,typescript,Javascript,Angular,Typescript,我有一个关于ngIf指令的问题 我的应用程序中有一些动态生成的角度材质切换,它们都有一个特定的id。我想知道,我知道使用ngIf指令可以有条件地在我的页面上显示这些元素。我正在为其他函数使用ngIf,但对于如何检查数组中是否存在元素的id,我有点不知所措 该阵列的外观如下所示: ["fc-vis", "fc-bis", "fc-dis"] 我的开关都有id:fc vis/fc bis。。。等等 我已经尝试使用ngIf,但我不知道如何在条件下发送元素的id。。。或者我可能做错了什么 我想做的是:
["fc-vis", "fc-bis", "fc-dis"]
我的开关都有id:fc vis/fc bis。。。等等
我已经尝试使用ngIf,但我不知道如何在条件下发送元素的id。。。或者我可能做错了什么
我想做的是:
*ngIf="object.id in myArrayList"
或
你知道如何在条件下使用对象的id来检查它是否存在于该数组中吗?如果你支持现代浏览器,那么你可以在这里使用
array
方法,如:
*ngIf="myArrayList.includes(object.id)"
*ngIf="myArrayList.indexOf(object.id) > -1"
方法确定数组的条目中是否包含某个值,并根据需要返回true或false。因此,在调用此方法后,不需要在此处执行额外的检查includes()
Array
方法,如:
*ngIf="myArrayList.includes(object.id)"
*ngIf="myArrayList.indexOf(object.id) > -1"
indexOf()。因此,调用此方法后,我们还需要进行额外的检查,以查看从
方法返回的值是否大于indexOf()
,并基于此-1
将显示或隐藏元素*ngIf
在您的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>
{{myId.id}正在工作
我的问题更像是如何从逻辑上获得每个元素的对象id。。。类似这样的东西。id??你可以使用模板ref,我在答案中更新了它above@Avinash这在我的表单中不起作用,我希望在用户输入一个已经存在的数字时向他显示警告。通过console.log(myArray),我可以看到myArray包含预期的元素(即数字)。你知道什么是错误的吗?也可以考虑@ Avimuy的答案,IE不支持包含方法。这是不可能的。