Frontmatter
| id | 8968 |
| title | refactor: Migrate Component Columns to use Neo.grid.Row lifecycle (#8964) |
| state | Closed |
| labels | airefactoring |
| assignees | tobiu |
| createdAt | Feb 3, 2026, 7:31 PM |
| updatedAt | Feb 3, 2026, 8:44 PM |
| githubUrl | https://github.com/neomjs/neo/issues/8968 |
| author | tobiu |
| commentsCount | 1 |
| parentIssue | 8964 |
| subIssues | [] |
| subIssuesCompleted | 0 |
| subIssuesTotal | 0 |
| blockedBy | [] |
| blocking | [] |
| closedAt | Feb 3, 2026, 8:44 PM |
refactor: Migrate Component Columns to use Neo.grid.Row lifecycle (#8964)
tobiu added parent issue #8964 on Feb 3, 2026, 7:31 PM
tobiu assigned to @tobiu on Feb 3, 2026, 8:34 PM

tobiu
Feb 3, 2026, 8:43 PM
Input from Gemini 3 Pro:
✦ Completed
Neo.grid.column.Componentrefactor.Changes:
- Removed
mapandgetComponentIdfromNeo.grid.column.Component.- Refactored
cellRendererto be stateless regarding instances: it now accepts an existingcomponentfrom theRowvia arguments.Neo.grid.Rownow manages the lifecycle of cell components (storage inthis.components, destruction indestroy()).- Components are now created with
parentComponent: rowinstead ofbody.This eliminates the "Zombie Canvas" issue as components are tightly coupled to the stable
Rowinstances.
tobiu closed this issue on Feb 3, 2026, 8:44 PM
Neo.grid.column.Componenthandling.Body.cleanupComponentInstancestoNeo.grid.Row.Rowcomponent should automatically instantiate, update, or destroy cell components (like Sparklines) based on its state and the column configuration.