【发布时间】:2026-01-06 05:25:02
【问题描述】:
我有这么大的 html 菜单,因此我决定绑定以能够制作多个子菜单下拉菜单并避免 html 代码重复。父>子(也是父)>子...
对于上下文:在 ng2_msList/msList.components.ts 中,ColumnsManagements.ts 被导入为 this.ColumnsManagementInstance。 innerHTML 菜单正确显示,在 ng2_msList/pages/list.html 中:
<!-- COLUMNS DROPDOWN BUTTON -->
<ul [innerHTML]="msList.ColumnsManagementInstance.columnMenu" class="dropdown-menu" role="menu"> </ul>
使用(在我的代码的一个非常简化的版本中):(感谢Stack Q)
setHtmlColumnsMenu() {
var self = this;
var htmlcolumnsmenu = '';
[...]
htmlcolumnsmenu += this.createColumnsList(this.getNoneRelationalColumns(true));
// which return something like a lot of html content and sometime in it :
// <a href="javascript:;" (click)="msList.ColumnsManagementInstance.toogleColumn(column)">
[...]
return htmlcolumnsmenu;
}
BUT (click)="msList.ColumnsManagementInstance.toogleColumn(column)" (以前在 html 内容中)不再起作用。它在视图中作为标记中的简单文本写入(在未显示的 innerHtml 之前)。
我无法找到让它再次工作的方法。我测试了多种调用函数的方法,或者我在Ang Doc Section、here 等网络链接中找到的方法。 这些示例很容易调用在同一文件/上下文中设置的函数(单击)=“MyAction()”,但在我的上下文中,我无法正确调用它。
应用架构可能不像 Angular2 点击调用所期望的那样。
【问题讨论】:
标签: angular