相关疑难解决方法(0)

AngularJS中的全局变量

我有一个问题,我在控制器中的范围初始化变量.然后在用户登录时在另一个控制器中进行更改.此变量用于控制导航栏等内容,并根据用户类型限制对站点部分的访问,因此保持其值非常重要.它的问题在于初始化它的控制器,通过角度再次调用,然后将变量重置为其初始值.

我认为这不是声明和初始化全局变量的正确方法,它不是真正的全局变量,所以我的问题是什么是正确的方法,是否有任何关于使用当前版本的角度工作的好例子?

global-variables angularjs

344
推荐指数
7
解决办法
44万
查看次数

如何在javascript/angular中设置函数内的全局变量?

好吧,我需要在不同的角度控制器或任何函数中使用变量,我可以这样做,但在这种特殊情况下,我从服务或函数中获取其中一个变量的值,你想如何调用它这是代码

//global variable userdata
userdata = {};

ng.tcts.service('$user', function($http, $q, $window, $boots){
return{

    login: function(data){
        var deferred = $q.defer();

        $http({
            method:'POST',
            url:ng.api+'/log/in',
            data:{
                    data:data
                },
            headers:{'Content-type':'application/x-www-form-urlencoded'}        
        }).success(function(response, status, headers, config){
            if(response.success){
                console.log(response);
                //userdata assignation
                userdata = response.data;  
                deferred.resolve([response.respnum, response.success, response.report, response.data]);
            }
            else{
                deferred.resolve([response.respnum, response.success, response.report, response.data]);
            }
        }).error(function(response, status, headers, config){
            deferred.reject([response.respnum, response.success, response.report]);
        });
        return deferred.promise;        
    }

);
Run Code Online (Sandbox Code Playgroud)

正如你所看到的那样,我在userdata中为了成功函数中的response.data的值,当我在它工作的函数环境中使用它时,赋值工作正常,但是当我尝试在它之外使用它时,对象是空的,我希望你可以帮我这个,谢谢

javascript variables functional-programming global-variables angularjs

1
推荐指数
1
解决办法
3万
查看次数