页面刷新后保留角度变量 [英] retain angular variables after page refresh

查看:28
本文介绍了页面刷新后保留角度变量的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图找出一种方法来保持我的 angular 变量与页面刷新/跨控制器.我的工作流程是,

I'm trying to figure out a way to keep my angular variables with page refresh / across controllers. My workflow is,

  • 用户通过 Facebook 登录并获取访问令牌
  • 用户访问令牌将用于每个请求

我尝试了两种方法,

1 - 将令牌分配给 rootScope不工作

1 - Assigning the token to a rootScope Not working

2 - 通过使用 factory

#app.js
'use strict';

angular.module('recipeapp', [])
 .run(['$rootScope', '$injector', 'Authenticate', function($rootScope,$injector, Authenticate){
            $injector.get("$http").defaults.transformRequest = function(data, headersGetter) {
                $injector.get('$http').defaults.headers.common['auth-token'] = Authenticate.getToken();
             }
        }]);

#factory
'use strict';
angular.module('recipeapp')
  .factory('Authenticate', function(){
    var factory = {};
    var accessToken = "";

    factory.setToken = function(token) {
       accessToken = token;
    }
    factory.getToken = function() {
       return accessToken;
    }

    return factory;

  })

#facebook controller
I set the the token with every successful login
Authenticate.setToken(data.app_token);

但问题是,如果我刷新页面,Authenticate.getToken() 变为空白.我对 angular 还很陌生,无法找到在页面刷新后保留数据的方法

But the problem is, If I refresh the page, Authenticate.getToken() becomes blank. I'm pretty new to angular and cannot figure out a way to retain my data after a page refresh

任何帮助将不胜感激

推荐答案

您可以使用 localStorage.它真的很容易使用.

You can use localStorage. It is really easy to use.

var token = "xxx";
localStorage.setItem("token", token);
localStorage.getItem("token"); //returns "xxx"

这篇关于页面刷新后保留角度变量的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆