1

I'm using 'react-data-table-components' and having simple code like that:

import React, { useState } from "react";
import DataTable from "react-data-table-component";

const SampleDataTable = () => {

  const data = [
    { id: 1, name: "John Doe", age: 28, profession: "Engineer" },
    { id: 2, name: "Jane Smith", age: 32, profession: "Designer" },
    { id: 3, name: "Bob Johnson", age: 45, profession: "Manager" }
  ];


  const columns = [
    { name: "ID", selector: "id", sortable: true },
    { name: "Name", selector: "name", sortable: true },
    { name: "Age", selector: "age", sortable: true },
    { name: "Profession", selector: "profession", sortable: true }
  ];

  const [seletectRows, setSelectedRows] = useState();

  const handleSelectedRowsChange = (rows) => {
    setSelectedRows(rows.setSelectedRows);
  };

  const defaultSelectedRows = (row) => row.id > 2;

  console.log(seletectRows);

  return (
    <div>
      <h2>Sample Data Table</h2>
      <DataTable
        columns={columns}
        data={data}
        selectableRows={true}
        selectableRowsHighlight
        pagination 
        highlightOnHover 
        striped 
        dense 
        // onSelectedRowsChange={handleSelectedRowsChange}
        selectableRowSelected={defaultSelectedRows}
      />
    </div>
  );
};

export default SampleDataTable;

When I uncomment onSelectedRowsChange={handleSelectedRowsChange} it re-render forever. I don't why but it seems onSelectedRowsChange and selectableRowSelected are conflict. Pls help me if you can.

link codesanbox if you want to try: https://codesandbox.io/s/long-microservice-v84s8j?file=/src/App.js:0-1426

  • I have uncommented onSelectedRowsChange but I don't see any re-render. In fact, the functionalities are working fine for me. can you please check again in your codesandbox if this issue is reproducible? – Obydul Islam Khan Jul 26 '23 at 08:58

0 Answers0