Javascript 如何将json对象打印到Mat表?
我正在尝试将http响应打印到mat表。我无法将数据格式化为数组并将其设置为mat datasource。有人能给我引路吗Javascript 如何将json对象打印到Mat表?,javascript,json,angular,Javascript,Json,Angular,我正在尝试将http响应打印到mat表。我无法将数据格式化为数组并将其设置为mat datasource。有人能给我引路吗 [ { "n1":"abcd", "n2":"abcde", "A1": { "A11":{"t":b1}, "A12":{"t1":b2}, "A13":{"t":b3}, "A14":{"t":b4}, "A15":{"t":b5}} }, { "n2":"bcde", "n2":"bcdef", "A1": { "A11":{"t":b1,"t1":b2}, "A12
[
{
"n1":"abcd",
"n2":"abcde",
"A1":
{
"A11":{"t":b1},
"A12":{"t1":b2},
"A13":{"t":b3},
"A14":{"t":b4},
"A15":{"t":b5}}
},
{
"n2":"bcde",
"n2":"bcdef",
"A1":
{
"A11":{"t":b1,"t1":b2},
"A12":{"t":b3},
"A13":{"t":b4},
"A14":{"t":b5},
"A15":{"t":b6}
}
}
}
]
垫子桌应该是这样的
---------------------------------------------------
| data | A11 | A12 |A13 | A14 | A15 |
---------------------------------------------------
| n1,n2 | t | t | t | t | t |
---------------------------------------------------
| n1,n2 | t | t | t | t | t |
---------------------------------------------------
我在下面进行了尝试,但无法将子值(A11、A12、A13、A14、A15)设置为数组
ngOnInit() {
this.gService.getlist().subscribe(
(res: any[]) => {
let GL = new Array();
res.forEach(gl => {
GL.push({
n1: gl.n1,
n2: gl.n2,
A1: gl.A1,
// unable to read other json values part of A1.
})
})
this.datasource.data = GL;
}
````
我不确定您是如何定义模板的。但以下方法似乎有效。请注意,我使用的是括号表示法。理论上,它也适用于点表示法,但TS Lint可能会抛出一些错误 控制器
导出类AppComponent{
名称='5';
displayedColumns=[“数据”、“a11”、“a12”、“a13”、“a14”、“a15]”;
数据来源:任何;
inputData=[];
构造函数(){
SOURCE_DATA.forEach(数据=>{
这个是.inputData.push(
{
数据:数据['n1']+','+数据['n2'],
A11:数据['A1']['A11']['t'],
A12:数据['A1']['A12']['t']| |数据['A1']['A12']['t1'],
A13:数据['A1']['A13']['t'],
A14:数据['A1']['A14']['t'],
A15:数据['A1']['A15']['t']
}
);
});
this.dataSource=new MatTableDataSource您是否尝试过gl.A1.A11.t
或gl.A1[“A11”][“t”]
?您能创建一个吗?嘿,谢谢您的帮助。当我实现上述方法时,我得到了以下错误。“错误类型错误:无法读取未定义的属性”“A11”。可能是什么问题。请检查源对象中是否存在属性A11
。