Я пытаюсь отобразить данные после выполнения запроса. Я в состоянии сохранить данные в таблице данных, но они не отображаются в таблице данных.
Я вызвал функцию обработки данных после сохранения данных в массиве. Но это дает мне ошибку. Это показывает, что aDataSort не определен. Я вызываю функцию обработки данных в ngOnInit (), чтобы ошибка не отображалась.
<table datatable [dtOptions]="dtOptions" [dtTrigger]="dtTrigger"
class="row-border hover">
</table>
ngOnInit() {
this.dataTable()
}
ngAfterViewInit(): void {
// this.dtTrigger.next();
}
ngOnDestroy(): void {
// Do not forget to unsubscribe the event
this.dtTrigger.unsubscribe();
}
rerender(): void {
this.dtElement.dtInstance.then((dtInstance: DataTables.Api) => {
// Destroy the table first
dtInstance.destroy();
// Call the dtTrigger to rerender again
this.dtTrigger.next();
});
}
dataTable() {
console.log(this.scannedData);
let self = this;
this.dtOptions = {
data: this.scannedData,
columnDefs: [
{
'targets': 0,
render: function () {
let checkbox = `
<input type="checkbox" class="checkbox">`;
return checkbox;
}
}
],
columns: [
{
title:"Select"
},
{
title: "Name",
data: "data.name"
},
{
title: "Email",
data: "data.email"
},
{
title: "Phone",
data: "data.phone"
},
{
title: "Experience",
data: "data.experience"
},
{
title: "Score",
data: "data.score"
}
],
rowCallback: (row: Node, data: any[] | Object, index: number) => {
const self = this;
$("td", row).unbind("change");
$("td", row).bind("change", () => {
self.onSelect(data);
});
$("td .checkbox", row).unbind("change");
$("td .checkbox", row).bind("change", event => {
this.toggle(data);
});
return row
}
}
}
scanJob() {
let scanner = new FormData;
scanner.set('id', this.jobProfileId);
this.scanner.scanJob(scanner).subscribe(res => {
this.scannedData = JSON.parse(res);
this.dataTable();
console.log(this.scannedData);
},
error => {
console.log("error");
}
)
}
Я хочу увидеть данные в таблице данных