mat-table中没有数据

时间:2018-05-18 14:28:08

标签: angular angular-material

在Angular 2+中工作。这是我的项目。 https://stackblitz.com/edit/angular-v8tdaz 我不知道出了什么问题,但我的mat-table没有显示它的内容。 我看到sort,paginator,filter ......但是没有看到表中的数据。

我在控制台中看到数据

struct Copy {
    Copy(int in) : _i(in) {}
    // Copy assignment, just like std::vector!
    Copy& operator=(const Copy& copy) {
         _i = copy._i;
        std::cout << "I was Copied!\n";
    }
    int _i;
};

Copy a(3), b(5), &c = b;
a = c;

但在HTML中它是空的

0: {fieldDate: "Fri May 18 2018 17:38:35 GMT+0300 (RTZ 2 (зима))", fieldHost: "192.168.32.30", fieldEvent: "Active", fieldComent: "Its OK", fieldResult: "true"}
1: {fieldDate: "Fri May 18 2018 17:38:35 GMT+0300 (RTZ 2 (зима))", fieldHost: "192.168.30.47", fieldEvent: "Bug", fieldComent: "Smth wrong", fieldResult: "false"}
length: 2
  

我尝试在表格中显示非材质标签,也不显示。   我想,我的lib版本是错误的,但它确实有效。

你能帮助我吗?

1 个答案:

答案 0 :(得分:0)

您的项目中有几件事

首先,public displayedColumns: ['fieldDate', 'fieldHost', 'fieldEvent', 'fieldComent', 'fieldResult'];

这不是你如何分配字符串数组。我猜你在这里做了一个语法错误。而不是=您提供了:

所以,它应该是

public displayedColumns = ['fieldDate', 'fieldHost', 'fieldEvent', 'fieldComent', 'fieldResult'];

其次,displayedColumns应仅包含您要显示的列。在您的情况下,您只在HTML中显示fieldDate列,并在数组中设置5列。

所以,这应该是

public displayedColumns = ['fieldDate'];

以下是项目的工作解决方案 - Solution