从这个
repo,我已经成功配置了这个:
import {Component} from "angular2/core"; import {LocalStorageService} from "angular2-localstorage/LocalStorageEmitter"; @Component({ provider: [LocalStorageService] }) export class AppRoot{ constructor(private storageService: LocalStorageService){} ... }
如何使用storageService设置或获取本地存储?我甚至在文档中都找不到示例.
更新
经过一些测试,我已经通过WebStorage管理它来与Decorator一起工作:
import {LocalStorage,SessionStorage} from "angular2-localstorage/WebStorage"; @Component({}) export class LoginComponent implements OnInit { @LocalStorage() public username:string = 'hello world'; ngOnInit() { console.log('username',this.username); // it prints username hello world } }
但是,当我使用Chrome Dev查看我的本地存储时,我什么也看不到:
而在另一个组件中,
import {LocalStorage,SessionStorage} from "angular2-localstorage/WebStorage"; @Component({}) export class DashboardComponent implements OnInit { @LocalStorage() public username:string; ngOnInit() { console.log(this.username); // it prints null } }
解决方法
该服务仅导入应用程序,以便可以运行初始化代码.
你应该使用的方式是通过装饰器作为其他答案提到.
请注意,这意味着您只需要将服务导入到您的根最多(应用程序)组件中,而不是使用装饰器的所有组件.
更新
还要尝试使用instructions第2步中的第一种方式,使用引导而不是AppComponent.
不幸的是,这个图书馆正在寻找一个新的维护者.所以不知道它是多么可靠.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。