我如何编写一个函数,只有当用户与UI中的下拉菜单交互时才会执行,而不是从后端更新模型



如果我在select中使用ng-change,它将在从后端更新模型期间以及在用户与UI中的下拉菜单交互并更改值期间被触发。但是,我想要的是一种方法来区分两者,并执行一个函数,只有当用户改变下拉菜单,而不是当模型被一些其他来源更新。请让我知道是否有办法做到这一点?

如果我在select中使用ng-change,它将在模型期间被触发来自后端和用户与下拉菜单交互期间的更新并更改

的值

这不是真的。ng-change直接绑定到浏览器的change事件。对模型的更新不会导致对ng-change中的表达式进行评估。下面是演示这一点的示例:http://jsfiddle.net/kvxaLajb/

optionChanged仅在浏览器中更改下拉菜单时调用。当$timeout函数运行时,它会更新模型(和select),但optionsChanged不会被触发。听起来你只需要ng-change

最新更新