在Ag-grid中使用successCallback的问题

时间:2019-02-28 17:08:37

标签: vue.js ag-grid

我有一个带有ag-grid网格的vue组件(无限模型)。在执行setDatasource之后,我想直接在组件的另一个方法中访问其参数以使用successCallback。

总而言之,我找不到参数在哪里。

我尝试过:

this.gridApi.params.successCallback(data, totalRows)

this.gridOptions.params.successCallback(data, totalRows)

this.params.successCallback(data, totalRows)

有什么建议吗?

1 个答案:

答案 0 :(得分:0)

基本上,您已经错过了使用dataSource进行ag-grid的全部过程。

因此,根据official docIDatasource looks这样:

interface IDatasource {
    /** If you know up front how many rows are in the dataset, set it here. Otherwise leave blank.*/
    rowCount?: number;

    /** Callback the grid calls that you implement to fetch rows from the server. See below for params.*/
    getRows(params: IGetRowsParams): void;

    destroy?(): void;
}

让我们深入了解getRowsIGetRowsParams界面(只需要其中的一部分)

/** Params for the above IDatasource.getRows() */
export interface IGetRowsParams {
    ....
    successCallback(rowsThisBlock: any[], lastRow?: number): void;
    ...
}

如您所见,successCallback仅可通过dataSource并完全以getRows方法访问,这意味着您不必通过{{1}直接访问}。应该定义一次(如gridAPI),然后dataSource仅在需要时执行ag-grid

  

可能的解决方案(不建议使用,切成无限滚动所需的getRows,并自动填充新数据)

您可以将dataSource绑定到自己的属性,并在需要时执行它

这是simple hack example(选中params.successCallback