korbit-ai[bot] commented on code in PR #34562:
URL: https://github.com/apache/superset/pull/34562#discussion_r2255191417


##########
superset-frontend/src/explore/components/DataTablesPane/components/SingleQueryResultPane.tsx:
##########
@@ -78,6 +78,8 @@ export const SingleQueryResultPane = ({
         isPaginationSticky
         showRowCount={false}
         small
+        initialPageIndex={0}
+        key={filterText}

Review Comment:
   ### Improper key usage for forcing re-renders <sub>![category 
Design](https://img.shields.io/badge/Design-0d9488)</sub>
   
   <details>
     <summary>Tell me more</summary>
   
   ###### What is the issue?
   Using filterText as a key prop to force table re-render is an anti-pattern 
and violates React's component design principles.
   
   
   ###### Why this matters
   This approach can lead to unnecessary re-renders and potential performance 
issues. It also breaks React's component state preservation between re-renders.
   
   ###### Suggested change ∙ *Feature Preview*
   Instead of using filterText as a key, handle the filtering logic within the 
component or through proper state management:
   ```typescript
   const SingleQueryResultPane = () => {
     // ... other code ...
     return (
       <TableView
         columns={columns}
         data={filteredData}
         // ... other props ...
         initialPageIndex={0}
         // Remove key={filterText}
       />
     );
   };
   ```
   
   
   ###### Provide feedback to improve future suggestions
   [![Nice 
Catch](https://img.shields.io/badge/👍%20Nice%20Catch-71BC78)](https://app.korbit.ai/feedback/aa91ff46-6083-4491-9416-b83dd1994b51/e6ad97bc-7111-4b99-8f33-09896595bd38/upvote)
 
[![Incorrect](https://img.shields.io/badge/👎%20Incorrect-white)](https://app.korbit.ai/feedback/aa91ff46-6083-4491-9416-b83dd1994b51/e6ad97bc-7111-4b99-8f33-09896595bd38?what_not_true=true)
  [![Not in 
Scope](https://img.shields.io/badge/👎%20Out%20of%20PR%20scope-white)](https://app.korbit.ai/feedback/aa91ff46-6083-4491-9416-b83dd1994b51/e6ad97bc-7111-4b99-8f33-09896595bd38?what_out_of_scope=true)
 [![Not in coding 
standard](https://img.shields.io/badge/👎%20Not%20in%20our%20standards-white)](https://app.korbit.ai/feedback/aa91ff46-6083-4491-9416-b83dd1994b51/e6ad97bc-7111-4b99-8f33-09896595bd38?what_not_in_standard=true)
 
[![Other](https://img.shields.io/badge/👎%20Other-white)](https://app.korbit.ai/feedback/aa91ff46-6083-4491-9416-b83dd1994b51/e6ad97bc-7111-4b99-8f33-09896595bd38)
   </details>
   
   <sub>
   
   💬 Looking for more details? Reply to this comment to chat with Korbit.
   </sub>
   
   <!--- korbi internal id:858258a3-6844-41eb-ba90-9bf58f7f9801 -->
   
   
   [](858258a3-6844-41eb-ba90-9bf58f7f9801)



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: notifications-unsubscr...@superset.apache.org

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


---------------------------------------------------------------------
To unsubscribe, e-mail: notifications-unsubscr...@superset.apache.org
For additional commands, e-mail: notifications-h...@superset.apache.org

Reply via email to