我不知道如何在angularjs中观看绑定到该变量的变量。
这是我尝试过的。
在html中
<input type="text" ng-model="vm.text"/>--{{vm.text}}--
<p>{{vm.count}} times changed</p>
<input type="text" ng-model="text1"/>--{{text1}}--
<p>{{count1}} times changed</p>
在app.js中
$scope.$watch('this.text', function() {
console.log('watch 1');
this.count=this.count+1;
});
$scope.$watch('text1', function() {
// do something here
console.log('watch 2');
$scope.count1=$scope.count1+1;
});
和punker link相同。
我可以看text1,但不能看text1。
谁能解释一下如何观看text1?
提前致谢
最佳答案
您需要先使用this
将$scope
上下文绑定到角度angular.bind
$scope.$watch(angular.bind(this, function () {
return this.text;
}), function (newVal) {
console.log('watch 1');
this.count=this.count+1;
});
或者将一个函数而不是字符串&放置在观察程序中,该函数将在每个摘要周期进行评估
$scope.$watch(function () {
return vm.text;
},function(value){
console.log('watch 1');
this.count=this.count+1;
});
关于javascript - 如何在angularjs中观看此变量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34165086/