LearnNewsExamplesServices
Frontmatter
id9280
titleComponent: Support deep merging for `bind_` configs
stateClosed
labels
enhancementaicore
assigneestobiu
createdAtFeb 24, 2026, 2:09 AM
updatedAtFeb 24, 2026, 2:10 AM
githubUrlhttps://github.com/neomjs/neo/issues/9280
authortobiu
commentsCount1
parentIssuenull
subIssues[]
subIssuesCompleted0
subIssuesTotal0
contentTrust
projected
quarantined0
signals[]
blockedBy[]
blocking[]
closedAtFeb 24, 2026, 2:10 AM

Component: Support deep merging for bind_ configs

Closed v12.0.0/archive-v12-0-0-chunk-4 enhancementaicore
tobiu
tobiu commented on Feb 24, 2026, 2:09 AM

Currently, the bind_ configuration in Neo.component.Abstract lacks a deep merge descriptor. When a component instance is created and provided with a bind config (e.g., {store: 'stores.myStore'}), it completely overwrites any class-level bind config (e.g., {animateVisuals: ...}), rather than merging them.

This leads to unexpected loss of reactive bindings defined on the prototype.

Implementation Plan:

  • Add [isDescriptor]: true and merge: 'deep' to the bind_ configuration in src/component/Abstract.mjs.
  • Add unit tests in test/playwright/unit/state/Provider.spec.mjs to explicitly verify that class-level and instance-level bindings are correctly deep-merged.
tobiu
tobiu Feb 24, 2026, 2:10 AM

The framework change has been implemented and pushed to the dev branch.