angular - Angular 6 与 Ng-Bootstrap 设置 [destroyOnHide]="false" 导致所有选项卡在彼此下同时呈现
问题描述
我正在使用 Angular 6 和 ng-bootstrap,如果我在 ngb-tabset 组件上设置 [destroyOnHide]=false 属性,每个选项卡条目都会同时呈现:
<ngb-tabset #tabs="ngbTabset" [activeId]="activeIdString" [destroyOnHide]="false">
<ngb-tab id="vesssel" title="Vessel Details">
<ng-template ngbTabContent >
Test one
</ng-template>
</ngb-tab>
<ngb-tab id="installation" title="Installation" >
<ng-template ngbTabContent>
Test Two
</ng-template>
</ngb-tab>
</ngb-tabset>
导致两个内容都呈现。选项卡仍然显示和切换,但内容是不变的。
Test one
Test Two
如果我删除 [destroyOnHide] 属性,选项卡功能正确。
引导版本“@ng-bootstrap/ng-bootstrap”:“^2.2.1” 角度版本“@angular/common”:“^6.1.0”,
解决方案
这可能会在将来对某人有所帮助。我没有意识到 [destroyOnHide]=false 属性实际上在加载时实例化了选项卡集中的所有组件,这与默认模式的功能不同,默认模式通常只按需呈现选项卡条目组件。我们的 web css 样式器已覆盖默认引导选项卡样式,以不将“活动”类与 display:none 样式相关联,因此即使只有一个选项卡处于活动状态,它们也会全部出现。
推荐阅读
- jquery - 如何从 Gridview 中的下拉列表中获取值并通过 ajax 和 jquery 将其传递给我的 Web 服务?
- c# - ASP.NET MVC 属性路由未命中正确的控制器
- r - 需要帮助滑块在 Shiny App 中工作
- python-3.x - 如何从具有 [5,5] 和 [10,10] 均值的高斯分布生成 2 组 1000 个 2D 点?
- spring-integration - Spring-Integration:多线程创建具有公共根目录的 sftp 目录失败
- maximo - 从位置导航到工作订单
- php - 如何从表单上传多个图像和单个文本
- javascript - 如何在不使用 input.value 的情况下将文本输入到输入中
- java - 当方法的定义说它接受 java.sql.date 作为参数时,方法如何接受 java.sql.timestamp?
- node.js - 为什么安装 puppeteer 后项目上会出现红色的“感叹号”?