在调用组件标题

时间:2018-06-08 11:27:17

标签: angular

我是棱角分明的初学者4我在不同的地方看了但是我找不到解决方案。 确实我的问题是:我想记录我的用户的id登录到本地存储,以便在第二个组件中使用。 当前场景:

1)用户登录

2)重定向到页面

3)错误userId未找到

如何在调用ngInit

之前将数据存储在本地存储中

screenshot

enter image description here

enter image description here ack.imgur.com/CVWfm.png

enter image description here

2 个答案:

答案 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)

enter image description here

enter image description here

它始终保留在登录页面