我有一个名为header
的选项列表,以显示在一个下拉列表中。我还有另一个列表table_settings['tags']
,如果header
的第i个元素是table_settings['tags']
,我希望下拉列表中的'Num'
的第i个元素。 / p>
当前我的代码是:
<div *ngIf="header">
<select (change)-"selectTarget($event)">
<option *ngFor="let option of header; let i=index" value="{{i}}">
<ng-template *ngIf="table_settings['tags'][{{i}}]=='Num'">
{{ option }}
</ng-template>
</option>
</select>
</div>
但这会在控制台上引发各种错误
答案 0 :(得分:1)
尝试这样:
*ngIf="table_settings['tags'][i]=='Num'"
答案 1 :(得分:1)
<div *ngIf="header">
<select (change)-"selectTarget($event)">
<option *ngFor="let option of header; let i=index" value="{{i}}">
<ng-template *ngIf="table_settings['tags'][i]=='Num'">
{{ option }}
</ng-template>
</option>
</select>
答案 2 :(得分:1)
插值({{}})允许您将计算的值(字符串)合并到HTML元素标签和属性分配之间的文本中。
就您而言,您不需要计算任何东西,因为您已经方便了i
。
解决方案
<div *ngIf="header">
<select (change)-"selectTarget($event)">
<option *ngFor="let option of header; let i=index" value="{{i}}">
<ng-template *ngIf="table_settings['tags'][i]=='Num'">
{{ option }}
</ng-template>
</option>
</select>
答案 3 :(得分:0)
<div *ngIf="header">
<select (change)-"selectTarget($event)">
<ng-container *ngFor="let option of header; let i=index" value="{{i}}">
<option *ngIf="table_settings['tags'][i]=='Num'">
{{ option }}
</option>
</ng-container>
</select>
<div>