0
我试图从根控制器更改常量的值。 然后状态转到登录控制器,其中常量的值仍旧是旧的。更改常数值和角度广播到子控制器1.4.9
最初常数被设定这样的:
var myApp = angular.module("app");
myApp.constant("clientsList", [{"object1":....}]);
我有一个包含
$rootScope.$emit('updateClients', null);
$state.go('login', {}, {reload: true});
在根控制器注销功能:
> $rootScope.$on('updateClients', function(event, clients) {
> _this.clientsList = clients;
> angular.module("app").constant("clientsList", clients);
> });
而在登录控制器,后正在被state.go重定向(“登录”):
.controller('LoginController', LoginController);
function LoginController(clientsList) {
// clientsList still have the old value here:
}
如何更改clientsList常量的值?
“更改不变”即应该足以告诉你,你不应该这样做:p – Canastro
我虽然这样。但是提供者包含与登录用户相关的数据。我可以使用其他服务... –
雅,总是使用提供者(服务或工厂)来存储您想要全局访问的数据。 – Canastro