开发者问题收集

为什么使用 ngIf 和 ViewChild 时会出现未定义的错误

2018-10-03
39

Angular CLI6

在我的组件中,我有:

@ViewChild('necRiskAnalysisDialog')
private necRiskAnalysisDialog;

在某个时候,我调用了

this.necRiskAnalysisDialog.set(...

在我的 html 中,我有

<div>
<div *ngIf="someCondition">
    <nec-risk-analysis #necRiskAnalysisDialog></nec-risk-analysis>
</div>
</div>

在我说 this.necRiskAnalysisDialog.set 的那一行中,我得到了一个未定义的 necRiskAnalysisDialog >

我该如何解决这个问题?

1个回答

确保您正在 ngAfterViewInit() 方法内访问 viewChild() 属性。

Stackblitz: https://stackblitz.com/edit/angular-nzznko

您可以使用“testcond”属性并参考 console.log()。

Suresh Kumar Ariya
2018-10-03