html - 为什么 *ngIf 不能在 Angular 中使用 ng-container
问题描述
我正在尝试在 *ngIf 的帮助下关闭单击关闭按钮时的引导警报框。
在 onClick (close) 中调用 isError=false。我能够将 isError 值记录为 false 但 ng-container 没有消失?这是我的代码
<div class="error-list">
<ng-container *ngIf="isError">
<ngb-alert type="danger" (click)="closeError()">{{errorMessage}}</ngb-alert>
</ng-container>
<div class="alert alert-warning alert-dismissible" role="alert">
<span type="button" class="close" data-dismiss="alert" aria-label="Close"><span
aria-hidden="true">×</span></span>
<strong>Warning!</strong> {{errorMessage}}.
</div>
</div>
.error-list {
position: fixed;
bottom: 0;
width: 100%;
z-index: 100;
}
::ng-deep .alert {
margin-bottom: 0;
}
.ts 文件
closeError(): void {
this.isError = false;
console.log("Message: ", this.isError);
}
解决方案
我尝试解决您的问题并且没有问题。这只是一个非常简化的示例:
https://stackblitz.com/edit/angular-r29kyu
根据我的理解,您也想用类隐藏 div alert alert-warning alert-dismissible
。如果是这样,你也必须把它放在里面ng-container
。
推荐阅读
- ios - xcodebuild 在 Xcode 11 beta 上挂起,在 Xcode 10 上成功
- android - IOS中Webview Flutter字体太小
- c++ - C++。开放式简历。计算弯折数
- r - 如何将列表中的数组转换为R中列表中的单个矩阵
- java - 如何让句子超时?
- java - Appium _org.openqa.selenium.SessionNotCreatedException
- flutter - SliverList颤动中的分隔符/分隔符
- angular - 在 nebular 开发的 ngx-admin 中将侧边栏更改为 RIGHT
- python - sphinx:在python中记录数据而不显示数据
- django - Django“用户”对象没有属性“配置文件”