Все:
Интересно, использую ли я контроллер в шаблоне с "as"
, но даю ему разные псевдонимы в разных местах, интересно, как я могу его посмотреть?
Подобно:
app.controller("main", function(){
this.name = "hello";
})
И шаблон выглядит так:
<div ng-controller="main as m1">
{{m1.name}}
</div>
<div ng-controller="main as m2">
{{m2.name}}
</div>
<div ng-controller="main as m3">
{{m3.name}}
</div>
Интересно, что я должен использовать для наблюдения?
$scope.$watch("m1.name", function(){});
$scope.$watch("m2.name", function(){});
$scope.$watch("m3.name", function(){});
Используйте функцию часов:
app.controller("main", function($scope){
this.name = "hello";
var vm = this;
function watchFn() {
return vm.name;
});
$scope.$watch(watchFn, function(newValue) {
console.log("name="+newValue);
});
})
var that = this; $scope.$watch(function() { return that.name; }, ...);