md-select 不更新模型

md-select doesn't update model

我有以下代码:

<md-select ng-change="updateView()" 
           ng-model="userSelected" 
           ng-if="authuser.privilege >= 3">
    <md-option ng-repeat="user in users" 
               ng-value="user">{{user.name}}</md-option>
</md-select>

但是在我的 upadateView() 中,当我登录 userSelected 时,无论我选择什么,我总是得到这个:

Object {$$mdSelectId: 1}

我在我的控制器中这样初始化它

$scope.personneSelected = {};

我是不是漏掉了什么?

您应该使用用户集合中出现的默认值之一初始化 ng-model 变量,以使其正确。

参考post

此外,无论返回什么,都应该是 'user' 的对象,因为 angularJS 将对象本身存储为 select 的每个选项的值。

使用 console.dir() 而不是 console.log() 查看对象属性(在 chrome 中)。

我使用 ng-show 而不是 ng-if 解决了我的问题。