angular - 角控制台异常
问题描述
我在角度 6 中得到了这个控制台异常:
_co.user.address is undefined
这是从服务接收到的 json 对象信息:
{"name":"John Doe","address":{"city":"Las Vegas"}}
这是网页代码:
<p>UserName: {{ user.name }} </p>
<p>City: {{ user.address.city }} </p>
这是用户类 ts 代码:
export class UserComponent implements OnInit {
user: Object;
constructor(private data: DataService) { }
ngOnInit() {
this.data.getUser().subscribe(
data => this.user = data
);
}
}
但是,网页中的城市信息显示正确。
解决方案
用于safe navigation operator(?)
处理控制台错误,因为正在异步检索数据
<p>UserName: {{ user?.name }} </p>
<p>City: {{ user?.address?.city }} </p>
如果要在模板上绑定大量变量,也可以使用 *ngIf,
<ng-template *ngIf="user">
<p>UserName: {{ user?.name }} </p>
<p>City: {{ user?.address?.city }} </p>
</ng-template>
推荐阅读
- reactjs - 不发送到商店的异步操作?
- python - ffmpeg-python 修剪和连接不起作用
- data-visualization - 如何从非网络文件中分类网络文件?
- python - python中最基本的线性代数方程
- vbscript - StringBuilder 的 appendFormat_5 无法解析位置参数
- swift - 我在 Swift 中进行选择排序时遇到问题
- c# - 按钮在datagridview c#中不断加倍
- swift - 如何在 Swift 中添加按钮以关闭模式
- typescript - 类的类型(不是实例)是什么?
- flutter - 部分忽略指针,而不是整个小部件