【问题标题】:Get/set id of a filter field in ag-grid for Angular 2在 Angular 2 的 ag-grid 中获取/设置过滤器字段的 id
【发布时间】:2017-04-05 22:56:01
【问题描述】:

我正在使用 ag-grid 在 angular2 中制作表格。

我有几列,可以对每一列进行过滤。 (我使用自定义过滤器) 为了进一步开发我的应用程序,我需要一个过滤器字段的 id。

我的行是这样的:

    createColumnDefs()  {
    this.columnDefs =[
        { headerName: "ID", field: "id", width:80, filterFramework:{

            component: PartialMatchFilterComponent,
            moduleImports: [FormsModule]
        }},
        { headerName: "Extern id", field: "externalRefId", width:150, filterFramework:{

            component: PartialMatchFilterComponent,
            moduleImports: [FormsModule]
        }},
        { headerName: "Name", field: "customerLastName", width:80,filterFramework:{

            component: PartialMatchFilterComponent,
            moduleImports: [FormsModule]
        }}
    ]
}

例如,用户选择 Name 字段进行过滤。我想知道用户选择了 Name 字段。我如何检查用户选择了哪个过滤字段(例如:在 console.log() 中显示)

【问题讨论】:

    标签: angular filter ag-grid


    【解决方案1】:

    您可以通过提供参数为您的组件提供额外的数据 - 例如,您可以使用 filterParams 过滤器:

    filterFramework: {
        component: PartialMatchFilterComponent,
        moduleImports: [FormsModule]
    },
    filterParams: {
        field: "name"
    },
    

    然后在 agInit 方法中,您将能够提取此信息以供以后使用:

    agInit(params:IFilterParams):void {
        console.log(params.field);
    

    【讨论】:

    • 感谢您的回答。这行得通。我在这样的行中添加了 colId{ headerName: "Straat", colId: 'workorder.location.street', field: "workorderStreet", width:100, filterFramework:{ component: PartialMatchFilterComponent, moduleImports: [FormsModule] }} 我像这样使用它:this.params.colDef.colIdagInit 函数中
    • 很高兴听到 :-) - 请注意,在 7.x 中,围绕 ng2 的使用有许多重大变化 - 请查看文档以获取更多信息:ag-grid.com/angular-2-beta-release
    猜你喜欢
    • 2017-04-04
    • 2020-05-15
    • 2017-10-09
    • 2020-10-04
    • 2020-04-08
    • 2018-06-01
    • 2017-01-10
    • 2017-09-18
    • 2021-05-07
    相关资源
    最近更新 更多