如何在我的角度2应用程序中导入angular-2-local-storage
,我正在使用angular-cli生成器。
Floder结构
angular-2-local-storage
。我想在我的组件中使用它。我试过这段代码
import { LocalStorageService } from '../../../node_modules/angular-2-local-storage';
constructor(
private localStorageService: LocalStorageService
) { }
但是收到此错误
答案 0 :(得分:0)
对于初学者来说store.js是一个狂热的图书馆,如果这是你想去的路线。它支持typescript,如果你使用angular-cli和npm,它很容易设置。
DefinitelyType是一个类型脚本定义文件的集合,可以添加到项目中,为外部库提供强大的类型,否则可能会对构建内容产生挑战。
添加后,angular cli将自动包含项目中的依赖项。 (位于带有@prefix的npm_modules中)要使用这些库,只需导入一个引用,你基本上就可以了。在某些方面,它们可以像角度2库一样使用。
路由2对于本地存储也相当简单,下面是沙盒应用程序的片段。这样就可以在服务中使用localStorage。
import { Injectable } from '@angular/core';
import { Http, Headers } from '@angular/http';
@Injectable()
export class UserService {
private loggedIn = false;
constructor(private http: Http) {
this.loggedIn = !!localStorage.getItem('auth_token');
}
login(email, password) {
let headers = new Headers();
headers.append('Content-Type', 'application/json');
let self = this;
return new Promise(function (resolve, reject) {
if (email === 'test@test.com' && password === 'test') {
localStorage.setItem('auth_token', 'xyz');
self.loggedIn = true;
resolve(true);
} else {
resolve(false);
}
});
}
setPassword(password) {
let headers = new Headers();
headers.append('Content-Type', 'application/json');
let self = this;
return new Promise(function (resolve, reject) {
resolve(true);
});
}
logout() {
localStorage.removeItem('auth_token');
this.loggedIn = false;
}
isLoggedIn() {
return this.loggedIn;
}
}