我是棱角分明的初学者4我在不同的地方看了但是我找不到解决方案。 确实我的问题是:我想记录我的用户的id登录到本地存储,以便在第二个组件中使用。 当前场景:
1)用户登录
2)重定向到页面
3)错误userId未找到
如何在调用ngInit
之前将数据存储在本地存储中
答案 0 :(得分:0)
如果我理解你的问题,你有一个组件(loginComponent),用户在那里创建登录。如果loggin成功,则要在localStorage中存储用户标识,然后在第二个组件(secondComponent)中检索此标识。你可以这样做:
在loginComponent中创建一个登录方法:
login(credentials) {
let correctUserAndPass: boolean = //Make your verification
if (correctUserAndPass) {
localStorage.setItem('userId', credentials["user"]);
this.router.navigate(['/secondComponent']);
} else {
// Credentials invalid
}
在你的第二个组件中:
ngOnInit() {
if (!localStorage.getItem('userId')) {
this.router.navigate(['/loginComponent'] // The userId is not stored in localStorage
} else {
userId = localStorage.getItem('userId');
}
}
答案 1 :(得分:0)