如何在 ag-Grid Angular 设置中访问 c​​olumnDefs 中另一列的值?

run*_*007 2 columndefinition angular ag-grid-angular

我有一个包含两列的 ag-Grid:ID 列和描述列。我在 TypeScript 类的 ngOnInit() 方法的 columnDefs 中构造了这两列的列定义。

在“描述”列中,我使用 cellRendererFramework 在我的 ag-Grid 中渲染 routerLink。我使用 cellRendererParams 将一些必要的参数传递到我的 Angular 渲染器组件。正是在“描述”列中,我需要访问 ID 列的 ID 值,并将其放入 cellRendererParams 参数“resourceId”中。我需要这个 ID 才能构建我的工作 RouterLink。

我怎样才能在下面的代码中做到这一点?

ngOnInit() {
  this.columnDefs = [

    // Column A - ID
    { 
        headerName: 'ID', 
        field: 'id', 
        width: 80, 
        sort: 'desc' 
    },

    // Column B - Description
    {
        headerName: 'Description',
        field: 'description',
        width: 150,
        cellRendererFramework: AgGridRouterLinkRendererComponent,
        cellRendererParams: {
            resourcePath: '/leverance/detail',
            resourceId: HERE-I-WOULD-LIKE-TO-ACCESS-THE-ID-VALUE-OF-THE-ID-FIELD-IN-THE-ID-COLUMN-ABOVE
    }

  ];
}
Run Code Online (Sandbox Code Playgroud)

小智 5

我会这样定义 B 列:

// Column B - Description
      {
        headerName: 'Description',
        field: 'description',
        width: 150,
        cellRendererFramework: AgGridRouterLinkRendererComponent,
        cellRendererParams(params) {
          return {
            resourcePath: '/leverance/detail',
            resourceId: params.data.id
          }
        }
      }
Run Code Online (Sandbox Code Playgroud)

这样您就可以获取其他列中的任何字段。