ng选项和ng-repeat如何不同?
在下面的代码中,我有一个ng-repeat可以遍历一个列表:
<select ng-model="selectedPerson" > <option ng-repeat="obj in people" value="{{obj.id}}">{{obj.name}}</option> </select>
以下是我认为是使用ng选项的等效选择框:
<select ng-model="selectedPerson" ng-options='obj.name for obj in people'></select>
我希望他们的行为是一样的,但是他们不会。为什么?
$scope.people = [ { id: 0,name: 'Leon',music: [ 'Rock','Metal','Dubstep','Electro' ] },
ng-repeat为每次迭代创建一个新的范围,因此不会像ng选项一样执行。
对于小列表,这并不重要,但较大的列表应使用ng选项。除此之外,它在指定迭代器方面提供了很大的灵活性,并提供了超越重复的性能优势。