Description
In a zoneless Angular application, an igx-tree using cascading selection can
render a stale parent checkbox after one of its children is removed at runtime.
When the parent has one selected child and one unselected child, removing the
unselected child makes all remaining children selected. The Tree correctly
updates the parent node model to selected = true, but the rendered parent
checkbox remains unchecked.
Framework
Angular
Angular Version
22.0.x
Ignite UI for Angular Version
22.1.x
Component / Area
Tree
Browser
Chrome
Operating System
No response
Command Not Working
Steps to Reproduce
- Open the provided reproduction sample. - zoneless-tree-repro.zip
- The sample uses zoneless change detection and contains an
igx-tree with
cascading selection enabled.
- The scenario starts automatically. Alternatively, click Run scenario
to execute it again.
- The first child is selected through a template-read signal. The second child
remains unselected.
- Another signal used by an
@if expression removes the unselected child.
- Observe the parent node model and its rendered checkbox.
Actual Result
After the unselected child is removed, the parent node model becomes selected,
but its checkbox remains unchecked:
parentSelected=true
checkboxChecked=false
The Tree model and rendered selection state are inconsistent even though the
application updates both states through signals.
Expected Result
After the unselected child is removed, the parent node should become selected
and its rendered checkbox should be checked.
Reproduction URL
No response
Attachments
zoneless-tree-repro.zip
Description
In a zoneless Angular application, an
igx-treeusing cascading selection canrender a stale parent checkbox after one of its children is removed at runtime.
When the parent has one selected child and one unselected child, removing the
unselected child makes all remaining children selected. The Tree correctly
updates the parent node model to
selected = true, but the rendered parentcheckbox remains unchecked.
Framework
Angular
Angular Version
22.0.x
Ignite UI for Angular Version
22.1.x
Component / Area
Tree
Browser
Chrome
Operating System
No response
Command Not Working
Steps to Reproduce
igx-treewithcascading selection enabled.
to execute it again.
remains unselected.
@ifexpression removes the unselected child.Actual Result
After the unselected child is removed, the parent node model becomes selected,
but its checkbox remains unchecked:
The Tree model and rendered selection state are inconsistent even though the
application updates both states through signals.
Expected Result
After the unselected child is removed, the parent node should become selected
and its rendered checkbox should be checked.
Reproduction URL
No response
Attachments
zoneless-tree-repro.zip