Javascript AngularJS使用对象填充ng选项

Javascript AngularJS使用对象填充ng选项,javascript,angularjs,Javascript,Angularjs,如果使用ng选项,我将如何填充select 所以我有点像 <select ng-model="option.model" ng-options="option as (option.firstVal + ' ' + option.secondVal) for option in options> <option value="">default</option> 它不起作用。它将使用默认选项填充该字段 [编辑1] 在本例中,下拉列表应选择为John R

如果使用ng选项,我将如何填充select

所以我有点像

<select ng-model="option.model"
ng-options="option as (option.firstVal + ' ' + option.secondVal) 
  for option in options>
<option value="">default</option>
它不起作用。它将使用默认选项填充该字段

[编辑1] 在本例中,下拉列表应选择为John Rambo,但改为默认值


jsfiddle.net/brzxn8yt/1

您只需要使用ng options的track by属性。在下面的示例中,我通过ID属性跟踪对象

注意:请在对象中使用唯一属性(例如:id将是完美的,因为没有重复项,但actor属性有重复项,并且将抛出并出错)

var myapp=angular.module('myapp',[]);
myapp.controller('FirstCtrl',函数($scope){
$scope.people=[
{id:1,第一个:'John',最后一个:'Rambo',演员:'Silvester'},
{id:2,第一个:'Rocky',最后一个:'Balboa',演员:'Silvester'},
{id:3,第一个:'John',最后一个:'Kimble',演员:'Arnold'},
{id:4,第一个:'Ben',最后一个:'Richards',演员:'Arnold'}
];
$scope.selectedPerson={id:1,第一个:“John”,最后一个:“Rambo”,演员:“Silvester”};//一个person对象
});

违约
{{selectedPerson}}

这个plunkr展示了最好的方法,请让我知道这是否是您需要的。不完全是,我想要的是如何用给定的选项对象填充批处理。因此,默认选项是具有option对象值的选项。您所说的非常令人困惑,您是否可以使用示例数据制作一个JSFIDLE来查看,或者在JSFIDLE内的注释中突出显示问题?分叉您的小提琴。理论上,下拉列表应该选择John Rambo,但它会选择默认值。
$scope.option.model = option; //option is made elsewhere