ng-change如何获取新值和原始值?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (13)

我使用ng选项从下拉菜单中选择值。我希望能够将旧的值和新的值进行比较。对于获取新的下拉值来说,变化很好,但是我怎样才能同时得到新的值和原始的值呢?

<select ng-change="updateValue(user)" ng-model="user.id" ng-options="user.id as user.name for user in users"></select> 

例如,假设我希望控制器记录“你的前用户名是Bill,你当前的用户名是Phillipe”。

提问于
用户回答回答于

使用角{{表达式},可以将旧用户或user.id值作为文字字符串添加到ng-Changing属性中:

<select ng-change="updateValue(user, '{{user.id}}')" 
        ng-model="user.id" ng-options="user.id as user.name for user in users">
</select>

在ngChange上,updateValue的第一个参数将是新的用户值,第二个参数将是在SELECT-标记最后一次按角更新时形成的文字,并使用旧的user.id值。

用户回答回答于

只要在控制器中保留一个currentValue变量,就可以对每个更改进行更新。然后,每次更新之前,你都可以将其与新值进行比较。

扫码关注云+社区