angularjs 1.7选择下拉列表显示了一个额外的选项值

angularjs 1.7选择下拉列表显示了一个额外的选项值,angularjs,ng-options,angularjs-1.7,Angularjs,Ng Options,Angularjs 1.7,我正在尝试在我的应用程序中将angularjs从1.5迁移到1.7 我的模型数据如下: $scope.colors = [ {name:'black', shade:'dark'}, {name:'yellow', shade:'light'} ]; $scope.myColor = ''; html: <label>Color : <select ng-model="myColor" ng-options="color.name for co

我正在尝试在我的应用程序中将angularjs从1.5迁移到1.7

我的模型数据如下:

$scope.colors = [
  {name:'black', shade:'dark'},
  {name:'yellow', shade:'light'}
];

$scope.myColor = ''; 
html:

 <label>Color :
 <select ng-model="myColor"
        ng-options="color.name for color in colors">
     <option value="">-- choose color --</option>
  </select>

$scope.myColor
为空值时,有没有办法避免显示
并将其默认为
--选择颜色--

它以1.5的角度工作

这是普朗克:


编辑:@FDavidov,@Houssein,@Aleksey建议我在下面的答案中使用
$scope.myColor=null
。谢谢你。但这是我的企业应用程序代码库的一个重大变化。我正在尝试找出是否有其他方法可以通过更改html来实现同样的效果。

您应该将$scope.myColor设置为null而不是设置为“”

Vinay


将空字符串(即
'
)分配给
$scope.myColor
就是给它一个实际值。只需删除语句
$scope.myColor=''
或将
'
替换为
null

$scope.myColor=null<select ng-model="myColor" ng-options="color.name for color in colors" class="ng-pristine ng-untouched ng-valid ng-empty">
   <option value="?" selected="selected"></option>
   <option value="">--choose color --</option>
   <option label="black" value="object:3">black</option>
   <option label="yellow" value="object:4">yellow</option>
</select>