如何在Angular2中声明仅在模板中使用的变量
我有下面的代码如何在Angular2中声明仅在模板中使用的变量,angular,Angular,我有下面的代码 <ion-card > <ion-card-content> <ion-chip *ngFor="let skill of contact.skills | split"> <ion-label>{{skill}}</ion-label> </ion-chip> </ion-card-content> </ion-card>
<ion-card >
<ion-card-content>
<ion-chip *ngFor="let skill of contact.skills | split">
<ion-label>{{skill}}</ion-label>
</ion-chip>
</ion-card-content>
</ion-card>
{{skill}}
然后,如果没有技能,我想隐藏该卡,因此我将其更改为
<ion-card [hidden]="(contact.skills | split).length == 0">
<ion-card-content>
<ion-chip *ngFor="let skill of contact.skills | split">
<ion-label>{{skill}}</ion-label>
</ion-chip>
</ion-card-content>
</ion-card>
{{skill}}
它工作得很好,但问题是value将拆分管道两次,那么如何定义变量并使用管道一次呢
我在下面试过了,但没有成功
<ion-card #skills="contact.skills | split" [hidden]="skills.length == 0">
<ion-card-content>
<ion-chip *ngFor="let skill of skills">
<ion-label>{{skill}}</ion-label>
</ion-chip>
</ion-card-content>
</ion-card>
{{skill}}
不能使用模板变量分配自定义值
模板变量只能用于直接或按名称引用元素和组件(exportAs
),或用于从结构指令上下文(如*ngFor
中的let idx=index
)分配值
对于您的用例,改为在components类中创建一个字段并绑定到此类