From 6d759a89fc8a06ec7880675aae420483aa97d1f7 Mon Sep 17 00:00:00 2001 From: simplejason Date: Mon, 22 Apr 2019 11:39:23 +0800 Subject: [PATCH] fix(module: tree): fix nodes list to render correctly (#3326) * fix(module: tree): fix nodes list to render correctly close #3320 * fix(module: tree): rollback default keys * fix(module: tree): use nzNodes only --- components/tree/nz-tree.component.ts | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/components/tree/nz-tree.component.ts b/components/tree/nz-tree.component.ts index c34fc59c58f..0b673814f1a 100644 --- a/components/tree/nz-tree.component.ts +++ b/components/tree/nz-tree.component.ts @@ -162,6 +162,13 @@ export class NzTreeComponent implements OnInit, OnDestroy, ControlValueAccessor, return this._searchValue; } + /** + * To render nodes if root is changed + */ + get nzNodes(): NzTreeNode[] { + return this.nzTreeService.rootNodes; + } + // model bind @Output() readonly nzExpandedKeysChange: EventEmitter = new EventEmitter(); @Output() readonly nzSelectedKeysChange: EventEmitter = new EventEmitter(); @@ -192,7 +199,6 @@ export class NzTreeComponent implements OnInit, OnDestroy, ControlValueAccessor, _nzMultiple: boolean = false; nzDefaultSubject = new ReplaySubject<{ type: string; keys: string[] }>(6); destroy$ = new Subject(); - nzNodes: NzTreeNode[] = []; prefixCls = 'ant-tree'; classMap = {}; @@ -266,19 +272,20 @@ export class NzTreeComponent implements OnInit, OnDestroy, ControlValueAccessor, // tslint:disable-next-line:no-any initNzData(value: any[]): void { + let nzNodes: NzTreeNode[] = []; if (Array.isArray(value)) { if (!this.nzTreeService.isArrayOfNzTreeNode(value)) { // has not been new NzTreeNode - this.nzNodes = value.map(item => new NzTreeNode(item, null, this.nzTreeService)); + nzNodes = value.map(item => new NzTreeNode(item, null, this.nzTreeService)); } else { - this.nzNodes = value.map((item: NzTreeNode) => { + nzNodes = value.map((item: NzTreeNode) => { item.service = this.nzTreeService; return item; }); } this.nzTreeService.isCheckStrictly = this.nzCheckStrictly; this.nzTreeService.isMultiple = this.nzMultiple; - this.nzTreeService.initTree(this.nzNodes); + this.nzTreeService.initTree(nzNodes); } }