关于在Ionic应用中结合JSON使用*ngIf指令的技术咨询
嘿,我来帮你搞定这个*ngIf的问题!你现在的写法有两个小错误,咱们一步步修正:
正确实现方式
首先要明确:Angular的*ngIf结构指令不需要用插值语法{{}}包裹表达式,直接写判断逻辑就行。而且你第二个<p>标签的*ngIf位置也写错了,应该放在标签属性里,不是标签内容中。
修正后的代码
<p *ngIf="item.price === 1"> Okey </p> <p *ngIf="item.price === 2"> Okey2 </p>
为什么原来的写法不行?
*ngIf接受的是布尔表达式,插值{{}}是用来把数据渲染到文本中的,放在指令里会导致Angular无法正确解析表达式,直接报错。- 第二个
<p>的*ngIf写在了标签内部文本里,这属于语法错误,结构指令必须作为标签属性存在。
额外提醒
如果你的JSON里price字段是字符串类型(比如存的是"1"而不是数字1),那要调整表达式匹配类型:
<p *ngIf="item.price === '1'"> Okey </p> <p *ngIf="item.price === '2'"> Okey2 </p>
另外别忘了确认你的组件已经导入了CommonModule(独立组件场景)或者根模块导入了BrowserModule,*ngIf属于这个模块里的指令,没导入的话也会失效哦。
内容的提问来源于stack exchange,提问作者Mans Salah-Eddi
相关产品推荐
相关产品推荐

