两者$watch
和ngChange
具有完全不同的用法:
假设您有一个在范围内定义的模型:
$scope.myModel = [
{
"foo":"bar"
}
];
现在,如果您想在发生任何更改时执行某些操作,则myModel
可以使用$watch
:
$scope.$watch("myModel", function(newValue, oldValue){
// do something
});
ngChange
是一个指令,当用户更改输入时将评估给定的表达式:
<select ng-model="selectedOption" ng-options="option for option in options"
ng-change="myModel=selectedOption"></select>
简而言之,您通常会绑定ngChange
到一些HTML元素。而$watch
对于模型。