Javascript 从属性指令查看元素的模型
我想从指令内部观察一个模型,该指令作为属性放置在Javascript 从属性指令查看元素的模型,javascript,angularjs,angularjs-directive,angularjs-scope,Javascript,Angularjs,Angularjs Directive,Angularjs Scope,我想从指令内部观察一个模型,该指令作为属性放置在输入元素上: <input id="mymodel_headline" name="mymodel[headline]" ng-model="mymodel.headline" sps-watch="true" type="text"> 它们似乎只在第一次创建指令时运行一次 您可以通过ngModel.$viewValue检索模型的值。从$watch表达式中的匿名函数返回,模型中的更改将触发$watch函数: scop
输入
元素上:
<input id="mymodel_headline" name="mymodel[headline]"
ng-model="mymodel.headline" sps-watch="true" type="text">
它们似乎只在第一次创建指令时运行一次
您可以通过
ngModel.$viewValue
检索模型的值。从$watch
表达式中的匿名函数返回,模型中的更改将触发$watch
函数:
scope.$watch(function () {
return ngModel.$viewValue;
}, function(result) {
console.log("watching via ngModel");
console.log(result)
});
有趣的是,为什么必须将第一个参数包装在匿名函数中?
$watch
的表达式可以是函数或字符串。在第一种情况下,它记录返回值的变化,在后一种情况下,它将字符串解释为角度表达式。仅仅指定一个应该监视的变量是不可能的。
scope.$watch(function () {
return ngModel.$viewValue;
}, function(result) {
console.log("watching via ngModel");
console.log(result)
});