Javascript ng选项正在替换我的默认选项

Javascript ng选项正在替换我的默认选项,javascript,angularjs,angular1.6,Javascript,Angularjs,Angular1.6,我有一个选择标记作为 <select ng-model="vm.fooModel" ng-options="item.id as item.name for item in vm.fooOptions" > <option value="none">Select</option> </select> 挑选 问题是,当渲染角度时,1.6将删除默认选项并添加一个空选项 <option value="

我有一个选择标记作为

 <select ng-model="vm.fooModel"
         ng-options="item.id as item.name for item in vm.fooOptions" >
     <option value="none">Select</option>
 </select>

挑选
问题是,当渲染角度时,1.6将删除默认选项并添加一个空选项

     <option value="?" selected="selected"></option>


“vm.fooModel”的初始模型值为“无”。3.0万T-T-T-T-T-T-T-T-T-T-T-T-T-T-T-T-T-T-T-T,h-T-T-h,h-T-h,y-T-h,y-h,y-T,y-T-y,y-T-y,y-T-T-T-y,y-s-T-T-T-T-T,y,y-T-T-T-T-T,y,y,y,y,y-T-T-T-T-y,y,y,y-s-y,y,y-s-s,y,y,y,y,y-s-s-s-y,y,y,s-s-s-s,y,y,y,y,y,y,s-s-s,s-s-y,y,y,y-s-s-s-s,y,y,y,y,y,s,s 1、5、对
选项使用
ng repeat
方法:

角度模块(“应用程序”,[]) .controller(“ctrl”,函数(){ var vm=这个; vm.fooModel=“无”; vm.foopoptions=[ {id:1,名称:“一”}, {id:2,name:“two”}, ]; })

挑选
{{item.name}
值={{vm.fooModel}

将默认选项添加到控制器中的选项数组中

角度模块(“应用程序”,[]) .controller(“ctrl”,函数(){ var vm=这个; vm.fooModel=“无”; vm.foopoptions=[{ id:“无”, 名称:“默认值” }, { id:1, 姓名:“一” }, { id:2, 姓名:“两个” }, ]; })

选择:{{vm.fooModel}


在ng repeat中使用track

为什么不在您的
vm.fooOptions
集合中添加一个“空”选项?并从文档中删除硬编码的空选项:“可选地,将值设置为空字符串的单个硬编码的
元素嵌套到
元素中。然后,该元素将表示空或“未选择”选项。有关演示,请参阅下面的示例。”@谢谢你的回复,但我很抱歉我不能这么做,因为那将是对我的攻击system@Amy,这是否意味着我们现在只能从1.6添加空字符串作为默认选项?是。您必须按照@cale_b的建议执行任何其他默认值,并将默认值前置到
ng options
集合。或者使用ng repeat,但不建议这样做。添加了默认属性,因此用户无法重新选择默认选项。
<option ng-repeat="item in vm.fooOptions track by item.id" ng-value="item.id">