javascript和angularjs中的本地存储

javascript和angularjs中的本地存储,angularjs,local-storage,Angularjs,Local Storage,我已经在javasrcipt的index.js文件的本地存储中添加了一些数据,使用 var account = { name: name, email: email }; //converts to JSON string the Object Literal account = JSON.stringify(account); localStorage.setItem('Account', acco

我已经在javasrcipt的index.js文件的本地存储中添加了一些数据,使用

var account = {
            name: name,
            email: email
            };
            //converts to JSON string the Object Literal
account = JSON.stringify(account);
localStorage.setItem('Account', account);
console.log("cookies"+localStorage.getItem('Account'));
我的日志返回的数据是cookies{“name”:“Chetan shah”,“email”:“some email id”}

现在我想把这个项目放到angularjs中的controller.js中。我已经使用了这个链接

在控制器内部,我编写了以下代码

var classFinder= angular.module('classFinder',['onsen.directives', 'ngTouch','ngCookies','LocalStorageModule']);
classFinder.controller('courseController',['$scope', '$window', '$http', '$cookieStore','localStorageService',function($scope,$window,$http,$cookieStore,localStorageService){
var myaccount = localStorageService.get('Account');
console.log("cookiestore"+myaccount);
但我的控制台返回cookiestore null


如何实现从index.js到controller.js的数据

我怀疑发生的事情是,
localStorageService
除了对值进行JSON编码之外,还做了其他事情。从源代码看,它似乎至少为键添加了前缀
ls

我想说,您应该使用相同的接口来设置值,或者:

  • 直接在控制器中使用window.localStorage(我怀疑您可能还需要解码JSON):

  • 或者使用
    localStorageService
    设置index.js中的值。如果您需要访问应用程序的上下文,可以通过
    run
    方法:

    angular.module('classFinder').run(['localStorageService', function(localStorageService) {
      var account = {
        name: name,
        email: email
      };
      localStorageService.set('Account', account);
    });
    
    注意:您必须在
    angular.module('classFinder',[…])
    之后运行上述操作,以便angular知道它正在访问一个已经创建的模块,而不是创建一个新模块。(使用方括号/不使用方括号[]作为模块的第二个参数会产生所有差异)


我怀疑发生的事情是,
localStorageService
除了对值进行JSON编码之外,还做了其他事情。从源代码看,它似乎至少为键添加了前缀
ls

我想说,您应该使用相同的接口来设置值,或者:

  • 直接在控制器中使用window.localStorage(我怀疑您可能还需要解码JSON):

  • 或者使用
    localStorageService
    设置index.js中的值。如果您需要访问应用程序的上下文,可以通过
    run
    方法:

    angular.module('classFinder').run(['localStorageService', function(localStorageService) {
      var account = {
        name: name,
        email: email
      };
      localStorageService.set('Account', account);
    });
    
    注意:您必须在
    angular.module('classFinder',[…])
    之后运行上述操作,以便angular知道它正在访问一个已经创建的模块,而不是创建一个新模块。(使用方括号/不使用方括号[]作为模块的第二个参数会产生所有差异)


我怀疑发生的事情是,
localStorageService
除了对值进行JSON编码之外,还做了其他事情。从源代码看,它似乎至少为键添加了前缀
ls

我想说,您应该使用相同的接口来设置值,或者:

  • 直接在控制器中使用window.localStorage(我怀疑您可能还需要解码JSON):

  • 或者使用
    localStorageService
    设置index.js中的值。如果您需要访问应用程序的上下文,可以通过
    run
    方法:

    angular.module('classFinder').run(['localStorageService', function(localStorageService) {
      var account = {
        name: name,
        email: email
      };
      localStorageService.set('Account', account);
    });
    
    注意:您必须在
    angular.module('classFinder',[…])
    之后运行上述操作,以便angular知道它正在访问一个已经创建的模块,而不是创建一个新模块。(使用方括号/不使用方括号[]作为模块的第二个参数会产生所有差异)


我怀疑发生的事情是,
localStorageService
除了对值进行JSON编码之外,还做了其他事情。从源代码看,它似乎至少为键添加了前缀
ls

我想说,您应该使用相同的接口来设置值,或者:

  • 直接在控制器中使用window.localStorage(我怀疑您可能还需要解码JSON):

  • 或者使用
    localStorageService
    设置index.js中的值。如果您需要访问应用程序的上下文,可以通过
    run
    方法:

    angular.module('classFinder').run(['localStorageService', function(localStorageService) {
      var account = {
        name: name,
        email: email
      };
      localStorageService.set('Account', account);
    });
    
    注意:您必须在
    angular.module('classFinder',[…])
    之后运行上述操作,以便angular知道它正在访问一个已经创建的模块,而不是创建一个新模块。(使用方括号/不使用方括号[]作为模块的第二个参数会产生所有差异)



您是否考虑过使用服务和$rootscope.$broadcast功能?不,我没有!!我该怎么做!!存储到localStorage的上下文是什么?为什么不使用localStorageServer而不是直接访问localStorage?index.js文件是用普通javascript编写的,而不是angularjs@MichalCharemza我不知道怎么做!!:(任何一个例子,你有没有考虑过使用服务和$rootscope.$broadcast函数?没有!我没有!!我怎么做!!你存储到localStorage的上下文是什么,为什么不使用localStorageServer而不是直接访问localStorage?index.js文件是用普通javascript编写的,而不是angularjs@MichalCharemza我愿意我不知道怎么做(任何一个例子,你有没有考虑过使用服务和$rootscope.$broadcast函数?没有!我没有!!我怎么做!!你存储到localStorage的上下文是什么,为什么不使用localStorageServer而不是直接访问localStorage?index.js文件是用普通javascript编写的,而不是angularjs@MichalCharemza我愿意我不知道怎么做(任何一个例子,你有没有考虑过使用服务和$rootscope.$broadcast函数?没有!我没有!!我怎么做!!你存储到localStorage的上下文是什么,为什么不使用localStorageServer而不是直接访问localStorage?index.js文件是用普通javascript编写的,而不是angularjs@MichalCharemza我愿意我不知道怎么做!!:(任何例子