启用角度数据表自定义按钮



我有一个带有自定义按钮的数据表,使用Angular,而不是jquery,我如何获得自定义按钮的句柄以稍后启用它?

ngOnInit(): void {
this.dtOptions = {
...
buttons: [
{
extend: 'excel',
text: 'Save as Excel'
},
{
text: 'Custom',
enable: false,
// later i want to enable this button on a particular event
...
}
]
}
}

以下是我如何最终解决我的问题,只需使用浏览器的开发人员控制台强行访问按钮并更改其启用/禁用…

export class TableComponent implements OnInit {
...
// this was already in my component so i used it as my starting point
// in my callback below
@ViewChild(DataTableDirective) datatableElement: DataTableDirective;
ngOnInit(): void {
this.dtOptions = {
...
buttons: [
{
extend: 'excel',
text: 'Save as Excel'
},
{
text: 'Custom',
enable: false,
// later i want to enable this button on a particular event
...
className: 'my-button',
attr: {
id: 'myButton',
title: 'this button does stuff'
}
}
]
}
}
someCallback(e) {
...
if (someCondition) {
datatableElement['dt'].button('.my-button').enable();
// i tried this but during typescript compile it
// complained that dt is private...
// datatableElement.dt.button('.my-button').enable();
} else {
datatableElement['dt'].button('.my-button').disable();
}
...
}
}

最新更新