背景
在我的模板文件中,我正在循环访问来自http响应的一些数据。
<div *ngFor="let method of paymentMethods">
在该循环中我正在输出
method?.payment_profile_id
现在在该循环内部,我想根据method?.payment_profile_id
的值显示两个元素之一。
我试图在*ngIf
*ngIf="defaultPayment = method?.payment_profile_id"
或者,
*ngIf="defaultPayment != method?.payment_profile_id"
但是当试图这样做时,我得到一个解析器错误,
分析程序错误:绑定不能包含第18列的分配 [defaultPayment = method?.payment_profile_id]
问题
写这个表达式的正确方法是什么?
答案 0 :(得分:1)
您正在使用=
进行作业,但如果您想进行比较,则应该是==
或===
。
答案 1 :(得分:0)
从错误中可以清楚地看出
绑定不能包含[defaultPayment = method?.payment_profile_id]中第18列的分配
*ngIf
(绑定)仅用于检查并返回Boolean(true/false)
到模板,您无法在* ngIf之间分配任何值。所以要检查相等性,您必须使用==
或===
而不是=
,所以正确的语法如上面的答案中所述。
*ngIf="defaultPayment == method?.payment_profile_id"