Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/413.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何在角度ag栅格中显示子阵列_Javascript_Angular_Typescript_Ag Grid - Fatal编程技术网

Javascript 如何在角度ag栅格中显示子阵列

Javascript 如何在角度ag栅格中显示子阵列,javascript,angular,typescript,ag-grid,Javascript,Angular,Typescript,Ag Grid,代码如下: rowData = [{ room: 'Room 1', data: [{ name: 'justin' },{ name: 'josh' }]; },{ room: 'Room 2', data: [{ name: 'juan' },{ name: 'luna' }]; }]; columnDefs = [{ headerName: 'Room', field: 'room' },{ headerName:

代码如下:

rowData = [{
 room: 'Room 1',
 data: [{ 
  name: 'justin'
 },{
  name: 'josh'
 }];
},{
 room: 'Room 2',
 data: [{ 
  name: 'juan'
 },{
  name: 'luna'
 }];
}];

columnDefs = [{
      headerName: 'Room',
      field: 'room'
},{
      headerName: 'Name',
      field: 'name'
}]
HTML


它返回未定义的

params.data.data[0]。name
是正确的表达式

因为行中的数据属性实际上是名称数组。你也可以开一张支票,比如

if(params.data.data&¶ms.data.data.length>0){
返回params.data.data[0].name;
}否则{
返回“”;

}

params.data.data[0]。name
是正确的表达式

因为行中的数据属性实际上是名称数组。你也可以开一张支票,比如

if(params.data.data&¶ms.data.data.length>0){
返回params.data.data[0].name;
}否则{
返回“”;
}

  • 在colDef中定义名称字段,如
    'data.name'

    valueGetter:this.customValueGetter

  • 我会使用
    customValueGetter
    像-

  • customValueGetter(参数){

    常数项; const columnField=params.colDef.field; 常量arrayNm=columnField.split(“.”[0]; const fieldNm=columnField.split(“.”[1]; if(params.data&¶ms.data[arrayNm]){ params.data[arrayNm].forEach((项)=>items.push(项[fieldNm]); } return items.join(“,”;//逗号分隔的名称 }
  • 在colDef中定义名称字段,如
    'data.name'

    valueGetter:this.customValueGetter

  • 我会使用
    customValueGetter
    像-

  • customValueGetter(参数){

    常数项; const columnField=params.colDef.field; 常量arrayNm=columnField.split(“.”[0]; const fieldNm=columnField.split(“.”[1]; if(params.data&¶ms.data[arrayNm]){ params.data[arrayNm].forEach((项)=>items.push(项[fieldNm]); } return items.join(“,”;//逗号分隔的名称 }
     <ag-grid-angular
          #agGrid
          style="width: 100%; height: 100%;"
          id="myGrid"
          class="ag-theme-alpine-dark"
          [columnDefs]="columnDefs"
          [rowData]="rowData"
          (gridReady)="onGridReady($event)"
        ></ag-grid-angular>
    
      valueGetter: function(params: any) {
        return console.log(params.data.data.name);
      }
    
     customValueGetter(params) {

    const items; const columnField = params.colDef.field; const arrayNm = columnField.split(".")[0]; const fieldNm = columnField.split(".")[1]; if(params.data && params.data[arrayNm]) { params.data[arrayNm].forEach((item) => items.push(item[fieldNm])); } return items.join(","); //comma separated names }