我有一个显示数组元素的选择。我想将此select绑定到元素的索引。我有这个代码
var choices = [
'One',
'Two',
'Three'
];
<select
ng-model="model.choice"
ng-options="idx as choice for (idx, choice) in choices">
</select>
这样可行但是如果数组有超过10个元素,则select中选项的顺序与数组中元素的顺序不匹配。似乎角度确实是一种&#34;值&#34;保存数组中元素索引的选项属性,不带前导零,因此排序为&#34; 1&#34;,&#34; 10&#34;,&#34; 2&#34;,&# 34; 3&#34;,...
我该如何解决这个问题并按照它们在数组中出现的顺序枚举选项?
答案 0 :(得分:0)
如果我们查看此处找到的Angular select指令的文档:
https://docs.angularjs.org/api/ng/directive/select
我们看到ngOptions的值有两组特定的语法。一个用于数据是一个数组,一个用于它是一个对象。在您的示例中,当数据是数组时,您已使用对象数据源的模式。
具体做法是:
ng-options="idx as choice for (idx, choice) in choices"
仅在名为choices
的变量是对象时适用。