如何在dataTable现有列中添加静态数据列

How to add static data columns in dataTable existing columns

有像 API 这样的要求,只提供很少的数据列,我需要添加一些静态数据列。有什么方法可以添加一些像 { data: this.test1 },{ data: this.test2 } 这样动态传递的列。我尝试添加两列但无法获取数据,得到空白单元格。

  constructor(private http: HttpClient) {}
   public test1 =123;
   public test2 =234;

初始化:

this.dtOptions = {
  pagingType: "full_numbers",
  pageLength: 10,
  scrollCollapse: true,
  processing: true,
  destroy: true,
  scrollY:'50vh',
  columns: [
    { title: '<input type="checkbox" />' },
    { data: "index" },
    { data: "firstname" },
    { data: "lastname" },
    { data: this.test1 },
    { data: this.test2 }
  ],

Stackblitz

您可以将 data 设置为 null,然后使用 defaultContent 选项。

列定义中的硬编码:

{ title: "Hard-Coded Data", data: null, defaultContent: "foo" }

类似,但使用 JavaScript 变量 - 例如,var bar = 'baz';:

{ title: "Hard-Coded Data", data: null, defaultContent: bar }