LearnNewsExamplesServices
Frontmatter
id9426
titleRefactor Tree column and component reactivity
stateClosed
labels
enhancementaiarchitecturegrid
assigneestobiu
createdAtMar 10, 2026, 11:31 AM
updatedAtMar 10, 2026, 11:41 AM
githubUrlhttps://github.com/neomjs/neo/issues/9426
authortobiu
commentsCount0
parentIssue9404
subIssues[]
subIssuesCompleted0
subIssuesTotal0
blockedBy[]
blocking[]
closedAtMar 10, 2026, 11:41 AM

Refactor Tree column and component reactivity

Closed v12.1.0 enhancementaiarchitecturegrid
tobiu
tobiu commented on Mar 10, 2026, 11:31 AM

The Tree component (src/grid/column/component/Tree.mjs) previously relied on a record_ config to observe state changes. Due to the Row Pooling architecture, Neo.core.Base's config setter ignores changes when the object reference is identical (===), preventing UI updates when node state (e.g. collapsed) changes.

This ticket resolves the issue by:

  1. Updating Neo.grid.column.Tree to extract reactive primitive properties (collapsed, depth, hasError, isLeaf, isNodeLoading) directly from the record in applyRecordConfigs.
  2. Refactoring Neo.grid.column.component.Tree to use these primitive configs (collapsed_, depth_, etc.) so that afterSet hooks reliably trigger visual updates (like updateIconCls).
tobiu assigned to @tobiu on Mar 10, 2026, 11:31 AM
tobiu added the enhancement label on Mar 10, 2026, 11:31 AM
tobiu added the ai label on Mar 10, 2026, 11:31 AM
tobiu added the architecture label on Mar 10, 2026, 11:31 AM
tobiu added the grid label on Mar 10, 2026, 11:31 AM
tobiu added parent issue #9404 on Mar 10, 2026, 11:32 AM
tobiu referenced in commit 19d991b - "feat(grid): Refactor Tree column and component reactivity to fix Row Pooling updates (#9426)" on Mar 10, 2026, 11:32 AM
tobiu closed this issue on Mar 10, 2026, 11:41 AM