作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我不知道如何在 angularjs 中观察绑定(bind)到该变量的变量。
这是我尝试过的。
在 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;
});
和骗子link对于同样的。
我可以观看 text1,但无法观看 text1。
谁能解释一下如何观看text1吗?
提前致谢
最佳答案
您需要首先使用angular.bind
将this
上下文绑定(bind)到 Angular $scope
$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/
我是一名优秀的程序员,十分优秀!