提问人:Entire-Commercial860 提问时间:11/8/2023 更新时间:11/8/2023 访问量:68
如何在 Angular 中使用 *ngIf 在元素中显示模板引用变量?
How to display template reference variables within elements with *ngIf in Angular?
问:
我想使用 Swagger UI 呈现一个 JSON 文件。但是,API 文档应显示在包含 *ngIf 的元素中。如果我执行所示的代码,则不会显示 API 文档,但如果我省略 *ngIf,一切正常。
@ViewChild('customerapidocumentation', { static: true })
custApiDocElement: ElementRef | undefined;
ngAfterContentInit(): void {
const apiDocumentation = this.api;
const ui = SwaggerUI({
spec: apiDocumentation,
domNode: this.custApiDocElement?.nativeElement
});
}
<div *ngIf="docu">
<div #customerapidocumentation id="customer-api-documentation"></div>
</div>
我也尝试过使用 {static: false} 和 ngAfterViewInit,但这也没有用。
答: 暂无答案
评论
static:true
只有当模板引用变量不在 *ngIf 下时。这个“参数”对 Angular 来说,不要在组件的最初阶段检查是否存在其他东西(这就是您可以在 ngOnInit 中使用的原因)。那就是:只检查是否存在一次