我无法广播到其他控制器,因为我没有父子关系,因此使用 $rootScope 将更改广播到其他控制器。
请帮我找出代码中的问题。
function serverController( server, $state, $rootScope, $timeout)
{
var vm = this;
vm.loader = false;
(function tick() {
server.setRootScope().then(
function(response){
angular.forEach(response.data, function (val) {
val['serverState'] = (val.status == 'running')?true:false;
$rootScope.servers[val.id] = val;
});
vm.servers = $rootScope.servers;
$rootScope.$broadcast('serverUpdated', [1,2,3]);
console.log('serverUpdated', [1,2,3]);
}
);
$timeout(tick, 25000);
})();
}
function serverManageController(server, $state, $rootScope, $stateParams)
{
var vm = this;
$rootScope.$on('serverUpdated', function(event, mass) {
console.log('serverUpdated');
console.log(mass);
});
}