Clue Mediator

Get datasource from React AG Grid

📅August 6, 2022

In this article, we’ll show you how to get datasource from React AG Grid. This will be used for the both client side and server side pagination.

Refer to the following article to implement pagination

Here, we will add button to get the whole datasource from the AG Grid on button click event.

Demo Application

Output - Get datasource from React AG Grid - Clue Mediator

Output - Get datasource from React AG Grid - Clue Mediator

Package Version

ag-grid-react

^25.2.0

ag-grid-community

^25.2.1

Steps to get datasource using Grid API

  1. Add AG Grid in React component
  2. Get the Grid API
  3. Render the button to get the datasource
  4. Output

1. Add AG Grid in React component

Let’s create a react application using the `create-react-app` and implement AG Grid in React. Check the following article for more information.

How to implement AG Grid in React

2. Get the Grid API

In the next step, we need to fetch the Grid API to perform the action. Refer to the following article to get the Grid API & Column API.

How to get Grid API and Column API in AG Grid

3. Render the button to get the datasource

Here, we’ll read the each node of the `gridApi` and collect the data. Look at the following simple code to get the datasource.

function App() {

  const [gridApi, setGridApi] = useState(null);

  const onGridReady = (e) => {
    setGridApi(e.api);
  }

  const handleBtnAction = () => {
    const data = [];
    gridApi.forEachNode(node => node.data && data.push(node.data));

    console.log("Grid datasource:", data);
  }

  // ...
  // ...

  return (
    <div class="App">
      <h2>Get datasource from React AG Grid - <a href="https://www.cluemediator.com" target="_blank" rel="noopener">Clue Mediator</a></h2>
      <button class="btn-action" onclick={handleBtnAction}>Get datasource</button>
      <div class="ag-theme-alpine ag-style">
        <aggridreact ...="" pagination={true} paginationpagesize={5} ongridready={onGridReady}>
          ...
          ...
        </aggridreact>
      </div>
    </div>
  );
}

export default App;

You can check the result in the console window when you click the button.

4. Output

Run the React application and check the output in the browser.

I hope you find this article helpful.
Thank you for reading. Happy Coding..!! 🙂

Demo & Source Code

GitHub Repository StackBlitz Project