Angular 2中的本地存储
我需要将数据存储在浏览器的会话中,并检索数据,直到会话退出。 你如何在Angular 2中使用本地和会话存储?
标准的localStorage
API应该是可用的,只要做:
localStorage.setItem('whatever', 'something');
这是相当广泛的支持 。
请注意,如果您尚未拥有它,则需要将"dom"
添加到tsconfig.json
的"lib"
数组中。
要将数据存储在本地存储中,
localStorage.setItem('key', 'value');
确保对值进行string化,例如,如果您有一个对象
localStorage.setItem(itemName, JSON.stringify(itemData));
OR用于各个键值对
localStorage.setItem('currentUser', JSON.stringify({ token: token, name: name }));
并从本地存储检索数据
user = JSON.parse(localStorage.getItem(currentUser));
使用Angular2 @LocalStorage模块,其描述如下:
这个小小的Angular2 / typescript装饰器使得使用HTML5'LocalStorage在指令(类属性)中自动保存和恢复variables状态变得非常容易。
如果你需要使用cookies,你应该看看: https : //www.npmjs.com/package/angular2-cookie
如上所述,应该是: localStorageService.set('key', 'value');
和localStorageService.get('key');
我们可以很容易地使用localStorage来设置数据和接收数据。
Note: it works with both angular2 and angular 4 //set the data localStorage.setItem(key, value); //syntax example localStorage.setItem('tokenKey', response.json().token); //get the data localStorage.getItem('tokenKey') //confirm if token is exist or not return localStorage.getItem('tokenKey') != null;
Local Storage Set Item Syntax:- localStorage.setItem(key,value); localStorage.getItem(key); Example:- localStorage.setItem("name","Muthu"); if(localStorage){ //it checks browser support local storage or not let Name=localStorage.getItem("name"); if(Name!=null){ // it checks values here or not to the variable //do some stuff here... } } also you can use localStorage.setItem("name", JSON.stringify("Muthu")); Session Storage Set Item Syntax:- sessionStorage.setItem(key,value); sessionStorage.getItem(key); Example:- sessionStorage.setItem("name","Muthu"); if(sessionStorage){ //it checks browser support session storage/not let Name=sessionStorage.getItem("name"); if(Name!=null){ // it checks values here or not to the variable //do some stuff here... } } also you can use sessionStorage.setItem("name", JSON.stringify("Muthu"));
轻松存储和检索数据
你可以使用装饰器来标记你想存储的variables。
export class SomeComponent { @LocalStorage public variableToBeStored: string; }
示例如何实现它在这篇文章中: https : //filipmolcik.com/angular-2-local-storage/ 。