问题:我在chrome浏览器F12开发工具中看到了几个错误
大概有8次我看到这个
  ERROR TypeError: Cannot read property 'CaseDisplayNumber' of undefined导致此错误的HTML模板页
<span class="header-data">{{caseCaption.CaseDisplayNumber}}</span>在这些错误下我确实看到了
 this.caseCaption  {CaseDisplayNumber: "CR2017129322000", 所以这似乎是通话的时间问题?
HTML代码输出看起来很好..。
组件
    ngOnInit(): void {
              this.pageService.getPageCommonData(this.model) //(this.model)
                        .subscribe(
                        result => {
                                   this.caseCaption = result["data"].CaseCaptionInfo;
                       }
            }服务
getPageCommonData(menu: Menu)  {
        return this.http.post(pageCommonData, JSON.stringify(menu), httpOptions)
        .map((response: Response)=> {
            return response;
        })
}发布于 2018-01-30 23:56:47
您可以更改以下代码行:
<span class="header-data">{{caseCaption.CaseDisplayNumber}}</span>备选案文1:
<span class="header-data">{{caseCaption?.CaseDisplayNumber}}</span>选项1使用名为“二进制运算符”或“Elvis运算符”的?;如果该操作数为真,则返回其第一个操作数。在这种情况下,“猫王运算符”通知模板,需要显示的对象可能还不可用,并允许模板继续呈现。对象及其值在对象可用时呈现。
备选案文2:
<span *ngIf="caseCaption" class="header-data">{{caseCaption.CaseDisplayNumber}}</span>它的名字叫“安全导航操作符”。在docs angular.io/guide/template-syntax#expression-operators.中非常清楚地说明了
https://stackoverflow.com/questions/48531615
复制相似问题