LearnNewsExamplesServices
Frontmatter
id7184
titleGrid: Optimize Rendering for Chunked Data Loading
stateClosed
labels
enhancement
assigneestobiu
createdAtAug 12, 2025, 12:39 AM
updatedAtAug 12, 2025, 12:44 AM
githubUrlhttps://github.com/neomjs/neo/issues/7184
authortobiu
commentsCount0
parentIssuenull
subIssues[]
subIssuesCompleted0
subIssuesTotal0
blockedBy[]
blocking[]
closedAtAug 12, 2025, 12:44 AM

Grid: Optimize Rendering for Chunked Data Loading

Closed v10.5.0 enhancement
tobiu
tobiu commented on Aug 12, 2025, 12:39 AM

Is your feature request related to a problem? Please describe.

When dealing with very large datasets in grids, loading all data at once can lead to significant performance issues and a poor user experience due to long initial rendering times.

Describe the solution you'd like

Implement an optimized rendering mechanism for grids that supports chunked data loading from stores. This involves:

  1. src/data/Store.mjs: Enhance the load event to include a postChunkLoad flag, indicating when a load operation is part of a larger chunked data transfer.
  2. src/grid/Body.mjs:
    • Introduce internal flags (#initialChunkSize, #initialTotalSize) to manage the state of chunked loading.
    • Modify the createViewData method to initially render only the first data chunk received, rather than attempting to render the entire (potentially very large) dataset at once.
    • Adjust getRowId and updateScrollHeight to correctly account for the initial chunked rendering.
    • Conditionally execute post-load operations (like scrolling) only after the full data set is loaded, not after each chunk.

This optimization will allow grids to display data much faster when dealing with large datasets that are loaded incrementally, providing a smoother and more responsive user experience.

Describe alternatives you've considered

(No specific alternatives considered as this is an optimization of an existing process for chunked data.)

Additional context

This feature is based on the changes introduced in commit e76ed9180e32027c157a5615305a824ef820de91.

tobiu assigned to @tobiu on Aug 12, 2025, 12:39 AM
tobiu added the enhancement label on Aug 12, 2025, 12:39 AM
tobiu referenced in commit e76ed91 - "#7184" on Aug 12, 2025, 12:39 AM
tobiu changed title from grid.Body: enhance chunk-based preloading to Grid: Optimize Rendering for Chunked Data Loading on Aug 12, 2025, 12:44 AM
tobiu closed this issue on Aug 12, 2025, 12:44 AM