【问题标题】:md-select doesn't update modelmd-select 不更新模型
【发布时间】:2015-12-16 13:21:57
【问题描述】:

我有以下代码:

<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>

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

Object {$$mdSelectId: 1}

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

$scope.personneSelected = {};

我错过了什么吗?

【问题讨论】:

    标签: javascript angularjs angular-material


    【解决方案1】:

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

    【讨论】:

    • 谢谢。我想知道为什么我的自定义指令(包括 md-select)没有更新模型。一个封闭的 div 正在使用 ng-if,这就是问题所在。
    【解决方案2】:

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

    参考帖子https://stackoverflow.com/a/12654812/1196544

    此外,无论返回什么都应该是“用户”的对象,因为 angularJS 将对象本身存储为选择的每个选项的值。

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多