javascript和angularjs中的本地存储
我已经在javasrcipt的index.js文件的本地存储中添加了一些数据,使用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
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):
- 或者使用
设置index.js中的值。如果您需要访问应用程序的上下文,可以通过localStorageService
方法:run
注意:您必须在angular.module('classFinder').run(['localStorageService', function(localStorageService) { var account = { name: name, email: email }; localStorageService.set('Account', account); });
之后运行上述操作,以便angular知道它正在访问一个已经创建的模块,而不是创建一个新模块。(使用方括号/不使用方括号[]作为模块的第二个参数会产生所有差异)angular.module('classFinder',[…])
localStorageService
除了对值进行JSON编码之外,还做了其他事情。从源代码看,它似乎至少为键添加了前缀ls
我想说,您应该使用相同的接口来设置值,或者:
- 直接在控制器中使用window.localStorage(我怀疑您可能还需要解码JSON):
- 或者使用
设置index.js中的值。如果您需要访问应用程序的上下文,可以通过localStorageService
方法:run
注意:您必须在angular.module('classFinder').run(['localStorageService', function(localStorageService) { var account = { name: name, email: email }; localStorageService.set('Account', account); });
之后运行上述操作,以便angular知道它正在访问一个已经创建的模块,而不是创建一个新模块。(使用方括号/不使用方括号[]作为模块的第二个参数会产生所有差异)angular.module('classFinder',[…])
localStorageService
除了对值进行JSON编码之外,还做了其他事情。从源代码看,它似乎至少为键添加了前缀ls
我想说,您应该使用相同的接口来设置值,或者:
- 直接在控制器中使用window.localStorage(我怀疑您可能还需要解码JSON):
- 或者使用
设置index.js中的值。如果您需要访问应用程序的上下文,可以通过localStorageService
方法:run
注意:您必须在angular.module('classFinder').run(['localStorageService', function(localStorageService) { var account = { name: name, email: email }; localStorageService.set('Account', account); });
之后运行上述操作,以便angular知道它正在访问一个已经创建的模块,而不是创建一个新模块。(使用方括号/不使用方括号[]作为模块的第二个参数会产生所有差异)angular.module('classFinder',[…])
localStorageService
除了对值进行JSON编码之外,还做了其他事情。从源代码看,它似乎至少为键添加了前缀ls
我想说,您应该使用相同的接口来设置值,或者:
- 直接在控制器中使用window.localStorage(我怀疑您可能还需要解码JSON):
- 或者使用
设置index.js中的值。如果您需要访问应用程序的上下文,可以通过localStorageService
方法:run
注意:您必须在angular.module('classFinder').run(['localStorageService', function(localStorageService) { var account = { name: name, email: email }; localStorageService.set('Account', account); });
之后运行上述操作,以便angular知道它正在访问一个已经创建的模块,而不是创建一个新模块。(使用方括号/不使用方括号[]作为模块的第二个参数会产生所有差异)angular.module('classFinder',[…])