我是 Angular 的新手,有点不知所措。
据我所知,我有一个组件可以显示 {{ this }}
之类的数据,效果很好。现在,我想选择 component.ts
中的数据。它是一个字符串数组:
private strategies: string[] = ["ASAP", "W&T"];
现在,在我的 component.html
中,我想用这些字符串作为选项创建一个选择。
<select ngModel="result" ngOptions="value for value in strategies">
</select>
{{ result }}
但是选项列表总是空的。 {{ strategies }}
产生 ASAP,W&T
,这是正确的。即使我使用基本示例,例如:
<select ngModel="result" ngOptions="value for value in ['a', 'b']">
</select>
选项列表完全是空的。我错过了什么?
最佳答案
您需要在 options
上使用 ngFor
来构建 angular (v2+) 中的选项:
还要确保组件中定义的 strategies
是公开的,因此可以在模板中访问。
<select [(ngModel)]="result">
<option *ngFor="let strategy of strategies" [value]="strategy">
{{strategy.name}}
</option>
</select>
还要确保使用 *ngFor
中的变量名来绑定(bind)选项的值和显示属性。
ng-options
是 angularJS 的一部分,在 Angular v2+ 中没有使用。
关于html - ngOptions 不起作用,即使是基本示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55004863/