inovua / reactdatagrid

Empower Your Data with the best React Data Grid there is
https://reactdatagrid.io
Other
3.45k stars 57 forks source link

Combine filtering and loadNode #402

Open StanislavMamulin opened 6 months ago

StanislavMamulin commented 6 months ago

I want to do filtering for expandable nodes that are loaded asynchronously via loadNode.

Version: @inovua/reactdatagrid-enterprise

What you did: Create ReactDataGrid with loadNode and defaultFilterValue properties. The basis was the code for loadNode taken from the official site: loadNode

Added only defaultFilterValue={defaultFilterValue} taken from FILTERING

What happened: Filtering by static subnodes works fine, but it doesn't see nodes fetched from loadNode.

- Filtering by the word "store", the filtered one shows dynamic nodes as well: - Filtering on the word "First", it says that it was not found: Reproduction repository: [Demo (Codesandbox)](https://codesandbox.io/p/sandbox/rdg-filtering-loadnode-96g4gh?layout=%257B%2522sidebarPanel%2522%253A%2522EXPLORER%2522%252C%2522rootPanelGroup%2522%253A%257B%2522direction%2522%253A%2522horizontal%2522%252C%2522contentType%2522%253A%2522UNKNOWN%2522%252C%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522id%2522%253A%2522ROOT_LAYOUT%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522UNKNOWN%2522%252C%2522direction%2522%253A%2522vertical%2522%252C%2522id%2522%253A%2522clq54hw6r00063b6fspednlke%2522%252C%2522sizes%2522%253A%255B100%252C0%255D%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522EDITOR%2522%252C%2522direction%2522%253A%2522horizontal%2522%252C%2522id%2522%253A%2522EDITOR%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL%2522%252C%2522contentType%2522%253A%2522EDITOR%2522%252C%2522id%2522%253A%2522clq54hw6r00023b6fd2e22p5o%2522%257D%255D%257D%252C%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522SHELLS%2522%252C%2522direction%2522%253A%2522horizontal%2522%252C%2522id%2522%253A%2522SHELLS%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL%2522%252C%2522contentType%2522%253A%2522SHELLS%2522%252C%2522id%2522%253A%2522clq54hw6r00033b6fu0vags54%2522%257D%255D%252C%2522sizes%2522%253A%255B100%255D%257D%255D%257D%252C%257B%2522type%2522%253A%2522PANEL_GROUP%2522%252C%2522contentType%2522%253A%2522DEVTOOLS%2522%252C%2522direction%2522%253A%2522vertical%2522%252C%2522id%2522%253A%2522DEVTOOLS%2522%252C%2522panels%2522%253A%255B%257B%2522type%2522%253A%2522PANEL%2522%252C%2522contentType%2522%253A%2522DEVTOOLS%2522%252C%2522id%2522%253A%2522clq54hw6r00053b6fmibyp6eh%2522%257D%255D%252C%2522sizes%2522%253A%255B100%255D%257D%255D%252C%2522sizes%2522%253A%255B50%252C50%255D%257D%252C%2522tabbedPanels%2522%253A%257B%2522clq54hw6r00023b6fd2e22p5o%2522%253A%257B%2522id%2522%253A%2522clq54hw6r00023b6fd2e22p5o%2522%252C%2522tabs%2522%253A%255B%255D%257D%252C%2522clq54hw6r00053b6fmibyp6eh%2522%253A%257B%2522tabs%2522%253A%255B%257B%2522id%2522%253A%2522clq54hw6r00043b6fkdo6nob4%2522%252C%2522mode%2522%253A%2522permanent%2522%252C%2522type%2522%253A%2522UNASSIGNED_PORT%2522%252C%2522port%2522%253A0%252C%2522path%2522%253A%2522%252F%2522%257D%255D%252C%2522id%2522%253A%2522clq54hw6r00053b6fmibyp6eh%2522%252C%2522activeTabId%2522%253A%2522clq54hw6r00043b6fkdo6nob4%2522%257D%252C%2522clq54hw6r00033b6fu0vags54%2522%253A%257B%2522tabs%2522%253A%255B%255D%252C%2522id%2522%253A%2522clq54hw6r00033b6fu0vags54%2522%257D%257D%252C%2522showDevtools%2522%253Atrue%252C%2522showShells%2522%253Afalse%252C%2522showSidebar%2522%253Atrue%252C%2522sidebarPanelSize%2522%253A15%257D) Problem description: I think that if dynamic loaded nodes are displayed, filtering should work on them too. Suggested solution: --