因为我没有父母关系,所以我无法向其他控制器广播,因此使用$ 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);
});
}
通过范围广播工作时,我还会要求您查看控制器到控制器通话的服务。此外,$ scope。$ on('serverUpdated'将是更好的选择,然后是$ rootScope。$ on('serverUpdated'我认为。 – TheRodeo