ng-bootstrap - 在 HTML dom 元素变量中设置手风琴面板对象的类型
问题描述
我有一个像这样定义的简单手风琴
<ngb-accordion>
<ngb-panel #group>
<ng-template ngbPanelTitle>
<i [ngClass]="{'fa-chevron-circle-down': group?.isOpen}">
这完全符合预期。现在我已经升级到 Angular 9 并添加了严格的模板检查,它失败了,group?.isOpen
因为它不知道组的类型是什么。我不知道如何#group
正确分配它。
例如,对于导航,我会这样做,<nav #nav="ngbNav" ngbNav>
但我无法确定面板的正确名称。
解决方案
NgbPanel
未设置 属性,因此此语法将exportAs
不起作用。作为一种解决方法,我只能在组件中成像冗余功能:
panelTyped(panel): NgbPanel {
return <NgbPanel>panel;
}
<ngb-accordion>
<ngb-panel #group>
<ng-template ngbPanelTitle>
<i [ngClass]="{'fa-chevron-circle-down': panelTyped(group)?.isOpen}">
推荐阅读
- python - 在 Python 中使用 seaborn 制作实心轮廓
- kubernetes - Kubernetes - API Server / etcd 如何知道每个 Pod 的状态?
- reactjs - redux-form 不适用于 gatsby.js 上的登录表单
- ios - 在iOS中的两个对齐标签中调整文本大小
- security - Symfony 4:无法访问管理员角色。拒绝访问
- django - 带有窗口函数的 Django ORM 子查询
- r - 转换为事务规则时出现错误“只能使用原子组件强制列表”
- javascript - 响应式粘性汉堡导航栏
- r - 如何向数据框中添加一列,以使添加的值增加 R 中的总行数?
- python - 分解从 API 调用返回的字典列表