【问题标题】:How to handle nested array of Object in ag grid(angular)如何在 ag 网格(角度)中处理嵌套的对象数组
【发布时间】:2019-02-04 19:38:10
【问题描述】:

我在 angular6 中使用 ag-grid 我在同一行中获取对象的嵌套数组我需要显示某些特定字段的多条记录

{
  "Id": "123",
  "Name": "usb",
  "email": "123@gmail.com",
  "Config": [
    {
      "config": "config1",
      "field2": "1",
      "field3": "1",
      "field4": "1",
      
    },
    {
      "config": "config2",
      "field2": "3",
      "field3": "3",
      "field4": "3",
      
    }
  ]
},
{
  "Id": "123",
  "Name": "usb",
  "email": "123@gmail.com",
  "Config": [
    {
      "config": "config1",
      "field2": "1",
      "field3": "1",
      "field4": "1",
      
    },
    {
      "config": "2",
      "field2": "3",
      "field3": "3",
      "field4": "3",
      
    },
    {
      "field1": "2",
      "field2": "3",
      "field3": "3",
      "field4": "3",
      
    }
  ]
}

当我到达配置字段时,上面的对象需要显示如下,因为配置计数是动态的

【问题讨论】:

    标签: javascript angular ag-grid


    【解决方案1】:

    您可能需要使用 ag-grid 提供的CellRenderers

    因此,在您的 columnDefs 中,对于 config 和 fields 等字段,您需要使用下面的 cellRendererFramework。

      {
        headerName: 'config',
        field: 'config',
        cellRendererFramework: YourRenderer
      }
    

    在您的 YourRenderer 中,如下所示:

    @Component({
      selector: 'your-renderer',
      template: `
       <div> the way you wanted to display the config </div>
      `
    })
    export class YourRenderer implements ICellRendererAngularComp {
      public params: ICellRendererParams;
    
      public agInit(params: ICellRendererParams): void {
        this.params = params.value;
      }
    
      public refresh(params: ICellRendererParams): boolean {
        return false;
      }
    }
    

    【讨论】:

    • 它正在工作,但只有一条记录即将到来(ngfor 仅检索第一条记录
    • 我不明白。如果您将代码发布到 stackblitz 上并分享会更好
    猜你喜欢
    • 2020-10-05
    • 1970-01-01
    • 1970-01-01
    • 2020-01-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-24
    • 2021-01-15
    相关资源
    最近更新 更多