【问题标题】:How can I get all the rows of ag-grid?如何获取 ag-grid 的所有行?
【发布时间】:2018-11-14 18:31:31
【问题描述】:

ag-grid 提供了一种使用api.getSelectedRows() 函数获取选定行的方法。并提供了一种使用api.setRowData([]) 函数设置所有行的方法。 我正在寻找 getAllRows() 来返回网格中的所有行。我知道有一种方法可以使用 api.forEachNode() 等循环遍历所有行。 有什么办法可以得到整个行数组?

【问题讨论】:

    标签: angular5 ag-grid


    【解决方案1】:

    我不认为有这样的方法,但你可以自己制作:

    getAllRows() {
      let rowData = [];
      this.gridApi.forEachNode(node => rowData.push(node.data));
      return rowData;
    }
    

    【讨论】:

    • 我现在也在做同样的事情,但是想知道 ag-grip 是否为此提供了任何内置功能。不过感谢您的建议。
    • 我试图找到一个,所以我至少有 90% 的把握没有这样的东西。我发现的最接近的是,如果您执行 api.getModel(),它会返回一个 InMemoryRowModel,该模型具有 rowsToDisplay 属性。
    • OP 已经尝试过 'api.forEachNode()' (如原始问题中所述)并期待一个可以返回网格中的行/计数的内置函数/属性
    【解决方案2】:

    Ag-grid 没有提供任何方法来做到这一点。你可以在这里查看Accessing Data Ag-gridGrid Api

    我来宾的原因是因为你可以通过循环来完成,正如你之前提到的。

    let items: Array<rows> = [];
    this.gridApi.forEachNode(function(node) { 
        items.push(node.data);
    });
    

    或者,如果您的 ag-grid 的源是通过角度链接的,则无需遍历网格(假设数据网格没有待处理的更改)

    【讨论】:

      【解决方案3】:

      我认为这是最简单的答案。

      让 {rowsToDisplay} = params.api.getModel();

      【讨论】:

        【解决方案4】:

        这就是我从网格 API 获取 rowData 的方式:

        api.getModel().gridOptionsWrapper.gridOptions.rowData
        

        很多方法的返回对象中都包含gridOptionsWrapper,因此您不一定非要使用getModel()

        【讨论】:

        • 在这种情况下,您将获得 rowData 的初始值,但不会更新,例如,如果删除了某些行。
        【解决方案5】:

        我想知道同样的事情,发现不能简单地获取所有行很烦人。在我的情况下,我需要在所有行上翻转一个标志,其中指示器设置在包含网格的组件之外,所以我做了以下操作。这是用于 React 应用程序的 TypeScript。

          gridApi!.selectAll();
          const rows = gridApi!.getSelectedRows();
        
          rows.forEach(row => {
            row.coverageAction = this.props.isIndicatorChecked;
          });
        
          gridApi!.setRowData(rows);
        

        【讨论】:

          猜你喜欢
          • 2017-03-14
          • 2019-07-12
          • 2017-09-18
          • 2017-09-18
          • 1970-01-01
          • 2020-05-29
          • 2020-10-04
          • 2022-01-16
          • 2016-11-10
          相关资源
          最近更新 更多