这时当我登录我的应用程序时,我希望将json对象存储在本地存储中,然后将其分配给用户Object。第一次,如果我登录它将不会显示任何内容,但如果我刷新页面,我可以看到名字。
这是.ts文件
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'app-navbar',
templateUrl: './navbar.component.html',
styleUrls: ['./navbar.component.css']
})
export class NavbarComponent implements OnInit {
user: Object;
ngOnInit() {
this.user = JSON.parse(localStorage.getItem('user'));
}
}
在模板中,我想像这样使用它:
<p> {{ user.first_name }} </p>
我该如何解决这个问题?
答案 0 :(得分:7)
你的html在设置变量之前呈现
在你的HTML中使用这个:
<p> {{ user?.first_name }} </p>
这称为安全导航操作员,可以防止错误并在填充时呈现first_name
。
答案 1 :(得分:3)
经过适当的搜索,在这里找到了答案。
Angular2: How to load data before rendering the component?
@Wesley Coetzee,感谢您的支持。