@@ -317,6 +317,8 @@ export class CdkTreeNode<T> implements FocusableOption, OnDestroy, AfterViewInit
317
317
/** Emits when the node's data has changed. */
318
318
_dataChanges = new Subject < void > ( ) ;
319
319
320
+ private _parentNodeAriaLevel : number ;
321
+
320
322
/** The tree node's data. */
321
323
get data ( ) : T { return this . _data ; }
322
324
set data ( value : T ) {
@@ -336,7 +338,7 @@ export class CdkTreeNode<T> implements FocusableOption, OnDestroy, AfterViewInit
336
338
// Retrieve the aria-level of the parent node because level from treeControl is 0 indexed and
337
339
// aria-level is 1 indexed
338
340
return this . _tree . treeControl . getLevel ?
339
- this . _tree . treeControl . getLevel ( this . _data ) : this . _parentNodeAriaLevel ( ) ;
341
+ this . _tree . treeControl . getLevel ( this . _data ) : this . _parentNodeAriaLevel ;
340
342
}
341
343
342
344
/**
@@ -351,6 +353,7 @@ export class CdkTreeNode<T> implements FocusableOption, OnDestroy, AfterViewInit
351
353
}
352
354
353
355
ngAfterViewInit ( ) : void {
356
+ this . _parentNodeAriaLevel = this . _getParentNodeAriaLevel ( ) ;
354
357
this . _elementRef . nativeElement . setAttribute ( 'aria-level' , String ( this . level + 1 ) ) ;
355
358
}
356
359
@@ -379,7 +382,7 @@ export class CdkTreeNode<T> implements FocusableOption, OnDestroy, AfterViewInit
379
382
this . role = 'treeitem' ;
380
383
}
381
384
382
- private _parentNodeAriaLevel ( ) : number {
385
+ private _getParentNodeAriaLevel ( ) : number {
383
386
let parent = this . _elementRef . nativeElement . parentElement ;
384
387
while ( parent &&
385
388
! ( parent . classList . contains ( 'cdk-nested-tree-node' ) || parent . classList . contains ( 'cdk-tree' ) ) ) {
0 commit comments