angular / angular/components

bug(COMPONENT): UI not rendered when dynamically modifying data in a mat tree

Open
#30,551 2 comments 0 reactions 0 assignees View on GitHub
area: cdk/tree P3
Dominant language
TypeScript
Stars
25k
Forks
6.8k
Avg merge
1d 8h
Merged PRs (30d)
91

Description

### Is this a regression?

- [x] Yes, this behavior used to work in the previous version

### The previous version in which this bug was not present was

17.1.5

### Description

Clicking on the node in the tree to dynamically add data doesn't update the UI.

### Reproduction

StackBlitz link: https://stackblitz.com/edit/2rhfgfpu?file=src%2Fexample%2Ftree-nested-child-accessor-overview-example.ts,src%2Fexample%2Ftree-nested-child-accessor-overview-example.html
Steps to reproduce:
1. Click on a node
2. The tree is not updated with the newly created node

### Expected Behavior

When i add a node, when the UI has to be updated.

### Actual Behavior

When i click on a node, i sometimes need to load dynamic data from the backend and append the created node to the node i just clicked.
We used to refresh the UI by assigning null to the data of the datasource and re-assigning the data to the datasource following this ticket : https://github.com/angular/components/issues/11381
Unfortunately, this does not work anymore because i have the following error : nodes is not iterable.
I checked the source code, and the error occurs in the tree component.

Funnily enough, when i modify the HTML to live reload the page, my nodes appear.

### Environment

- Angular: 19.1.5
- CDK/Material: 19.1.2
- Browser(s): Chrome Version 133.0.6943.98 (Official Build) (64-bit)
- Operating System (e.g. Windows, macOS, Ubuntu): Linux

Contributor guide

Open the contributing guide

Research direction

Reproduce the regression in the linked StackBlitz, starting with src/example/tree-nested-child-accessor-overview-example.ts and its HTML template. Then inspect the tree component source where the “nodes is not iterable” error occurs. Done means dynamically appended child data renders in the tree without the error or requiring a live reload.

Written by the indexing model from the issue text.

Assessment

Tech stack
angular, typescript
Domain
frontend
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.