-
-
Notifications
You must be signed in to change notification settings - Fork 1.4k
fix: View table data may be retained when switching between views #2996
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix: View table data may be retained when switching between views #2996
Conversation
🚀 Thanks for opening this pull request! We appreciate your effort in improving the project. Please let us know once your pull request is ready for review. |
📝 WalkthroughWalkthroughOn view changes, the React component now immediately resets its table-related state (data, order, columns, tableWidth) before invoking loadData for the new view, while preserving the existing scroll-to-top behavior. Changes
Sequence Diagram(s)sequenceDiagram
autonumber
actor User
participant ViewsComponent as Views.react.js
participant DataService as loadData(...)
User->>ViewsComponent: Change view (name/context)
activate ViewsComponent
Note right of ViewsComponent: Existing: window scroll to top
ViewsComponent->>ViewsComponent: Reset state {data:[], order:[], columns:{}, tableWidth:0}
ViewsComponent->>DataService: loadData(nextProps.params.name)
DataService-->>ViewsComponent: New data response
ViewsComponent->>ViewsComponent: Render with new data
deactivate ViewsComponent
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Pre-merge checks and finishing touches❌ Failed checks (1 warning)
✅ Passed checks (2 passed)
✨ Finishing touches
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
🎉 Snyk checks have passed. No issues have been found so far.✅ security/snyk check is complete. No issues have been found. (View Details) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
🧹 Nitpick comments (1)
src/dashboard/Data/Views/Views.react.js (1)
84-85
: LGTM! State clearing prevents stale data visibility.The immediate state reset before
loadData
correctly addresses the issue of retained table data when switching views. React's setState batching ensures this clear is applied along with the subsequentloading: true
update fromloadData
(line 153), preventing any visible flash of old data.Optional refinement (not required): If you prefer explicit ordering, you could use setState's callback to ensure
loadData
runs after the state is cleared:- // Clear table state immediately when switching views to prevent data retention - this.setState({ data: [], order: [], columns: {}, tableWidth: 0 }); - this.loadData(nextProps.params.name); + // Clear table state immediately when switching views to prevent data retention + this.setState({ data: [], order: [], columns: {}, tableWidth: 0 }, () => { + this.loadData(nextProps.params.name); + });However, React's setState batching already handles this correctly, so the current approach is fine.
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (1)
src/dashboard/Data/Views/Views.react.js
(1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
- GitHub Check: Docker linux/amd64
# [7.6.0-alpha.5](7.6.0-alpha.4...7.6.0-alpha.5) (2025-10-05) ### Bug Fixes * View table data may be retained when switching between views ([#2996](#2996)) ([ddc91c9](ddc91c9))
🎉 This change has been released in version 7.6.0-alpha.5 |
New Pull Request Checklist
Issue Description
View table data may be retained when switching between views. This means, when switching to a different view, the table data may contain entries from the previous view table data.
Approach
Clear table data on switch.
Summary by CodeRabbit