angular - 使用 Angular 6 解析时打印的变量未定义
问题描述
我有一个页面初始化加载一个大对象锦标赛:
ngOnInit() {
this.navbar.setLoading(true);
this.tournamentService.getTournament(this.slug)
.subscribe(tournament => {
this.data = tournament;
localStorage.setItem('tournament', JSON.stringify(tournament));
this.navbar.setLoading(false);
}, err => {
this.navbar.setLoading(false);
});
this.navbar.setLoading(false);
}
在我的 HTML 中,我有很多关于在数据不可访问时会失败的锦标赛的参考。我该怎么做才能避免这种情况?
我已经尝试过使用?运算符,但我不喜欢将它放在任何地方,并且在以下表达式中使用时会失败:[(ngModel)]="data.tournament"
我试图禁用基于布尔值loading
的渲染:
<div class="container-fluid" *ngIf="data">
但我得到一个ExpressionChangedAfterItHasBeenCheckedError
那么,我应该怎么做才能在加载数据时不出现这些错误?
解决方案
推荐阅读
- javascript - 如何从 AJAX 请求执行 Python 代码?
- unity3d - Lerp 到目标位置,但仅在半径范围内
- hyperledger-explorer - 通道发现中的 Hyperledger Explorer 错误
- opencv - cv 在 Xcode C++ 中使用未声明的标识符
- angular - 如何更改 Angular CLI 用于生成测试的根目录?
- javascript - Angular 2 - 更改嵌套表单输入值
- javascript - 传递消息时通过 iframe 引发错误的 Chrome 扩展程序中的沙盒页面
- sql - Oracle 透视/解码
- ios - 将 TextView 滚动到顶部
- kubernetes - 如何使用 DNS 发现 (SRV) 在 Kubernetes 中设置 ETCD 集群?