当我点击$PUBLIC_IP
控制器中的按钮时。 myCtrl
的{{1}}也应该使用当前控制器的ng-model
进行更改:
myCtrl2
答案 0 :(得分:3)
有几种方法可以解决这个问题。其中一个是使用$ emit事件。你可以深入挖掘here.
但为了快速参考,我提供了Plunkr here。请检查一下。
var app = angular.module('plunker', []);
app.controller('myCtrl', function($rootScope, $scope) {
$scope.name="before";
$scope.just = function(){
$scope.name="after";
$rootScope.$emit('update');
}
}).controller('myCtrl2', function($rootScope, $scope){
$rootScope.$on('update', function(){
$scope.name2 = "after";
})
});
答案 1 :(得分:0)
您需要制作一个服务,然后将其注入控制器。
答案 2 :(得分:0)
您可以为此使用$ rootScope:
var app = angular.module('plunker', []);
app.controller('myCtrl', function($rootScope, $scope) {
$scope.name="before";
$scope.just = function(){
$scope.name="after";
$rootScope.nameInRootScope=$scope.name;
}
}).controller('myCtrl2', function($rootScope, $scope){
$scope.name2 = $rootScope.nameInRootScope;
})
});