在对象中声明的数组上使用ng-options

时间:2015-07-10 22:03:13

标签: angularjs ng-options angularjs-ng-options

在我的控制器中,我有:

 $scope.sizes = {
    things: [
        'one',
        'two'
        ]
}

在我的HTML中,我有

  <select ng-options="thing for thing in sizes.things"></select>

生成的组合框没有值。但是,在这种情况下:

 $scope.things = ['one', 'two'];

  <select ng-options="thing for thing in things"></select>

得到的组合框显示&#34;一个&#34;,&#34;两个&#34;作为它的选择。有人可以解释为什么我无法访问$ scope对象中的数组吗?

1 个答案:

答案 0 :(得分:2)

您错过了ng-options select元素的ng-model属性。

添加ng-model="thing"让它正常工作......

<select ng-model="thing" ng-options="thing for thing in sizes.things"></select>

您可以看到一个有效的例子here

PS它实际上不适用于数组或对象。添加ng-model属性都可以正常工作。