angular.js - 如何用angular的run来将用户数据存储下来?
怪我咯
怪我咯 2017-05-15 17:07:45
0
1
790

我想通过run来设置一个$rootScope.userinfo,然后不同页面里面也可以通过$rootScope.userinfo来获取当前用户的信息而不需要再去服务器抓取,但是现在遇到了挺多问题。
第一次我在run中直接$http然后设置$rootScope.userinfo=response,然后在各个controller当中通过$scope.userinfo=$rootScope.userinfo来将这个userinfo抓取到当前scope中使用,但是出现了undefined的问题;
第二次我在run中使用broadcast

        $rootScope.$broadcast("thisintheuserinfo", response);

然后再在controller里面使用$on

$scope.$on("thisintheuserinfo",
        function (event, msg) {
            if(msg){
                //$scope.usernamea = msg.user;
                console.log('123')
                console.log(msg)
            }
            else{
                alert(msg)
            }

        });

但是出现了$on的function中的代码几乎从来不会运行的问题,似乎是因为run中的那个是异步的,controller的on在broadcast开始前就开始了?无论如何,反正也是错的多对的少。
所以不知道各位有什么好的方法可以给我借鉴一下?

怪我咯
怪我咯

走同样的路,发现不同的人生

모든 응답(1)
刘奇

기본적으로 요구사항을 충족하지만 약간의 부작용이 있을 수 있습니다.

으아악
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿