我的问题是当我需要"渲染"一个带有自定义HTML的数据表列,角度绑定似乎丢失了。
基本上,Datatable提供了一个(render
)回调,因此您可以在列中注入HTML。
对于我的情况,我的一个列是带有Actions按钮的下拉列表。
以下是我的数据表选项:
仔细看看第4栏
this.dtOptions = {
searching: false,
serverSide: true,
processing: true,
columns: [
{ data: "Class" },
{ data: "Locked" },
{ data: "IterationNumber" },
{
data: "FileID",
render: (data, type, row, meta) => {
return `<div class="ui compact menu">
<div class="actions ui pointing dropdown link item">
Actions...
<i class="dropdown icon"></i>
<div class="menu">
<a class="item" (click)="finalizeDocument()">Finalize</a>
<a class="item" (click)="addIterationOfDocument()">Add Iteration</a>
<a class="item">Delete</a>
</div>
</div>
</div>`;
}
}
],
ajax: {
contentType: "application/json",
dataType: "json",
url: "api/document/search",
method: "POST",
data: (d: any) => {
d.filter = this.filter;
return JSON.stringify(d);
}
}
};
呈现语义下拉列表但角度(click)
绑定无效。
我尝试使用Angular Dynamic Component但没有成功。
有没有办法重新应用角度绑定?
注意:直接在组件中使用相同的HTML位置。