import {Component, OnInit, OnDestroy} from '@angular/core'; @Component({ selector: 'cm-checkcascader-doc-5', templateUrl: './cm-checkcascader-doc-5.component.html', styleUrls: ['./cm-checkcascader-doc-5.component.css'] }) export class CmCheckCascaderDoc5Component implements OnInit, OnDestroy { placeHolder: string = "请选择"; _text = 'Unselect'; /** init data */ _options: any[] = [ { value: 'zhejiang', label: 'Zhejiang', children: [{ value: 'hangzhou', label: 'Hangzhou', children: [{ value: 'xihu', label: 'West Lake', isLeaf: true }], }, { value: 'ningbo', label: 'Ningbo', isLeaf: true }], }, { value: 'jiangsu', label: 'Jiangsu', children: [{ value: 'nanjing', label: 'Nanjing', children: [{ value: 'zhonghuamen', label: 'Zhong Hua Men', isLeaf: true }], }], } ]; _value: any[] = []; constructor() { } ngOnInit() { } ngOnDestroy() { } _console(value: any) { console.log(value); } buildDisplayLabel(node: any[], labels: string[], str: string) { if (!node || !node.length) { return; } for (let i = 0; i < node.length; i++) { let label = (str? (str+"-") : "") + node[i].label; if (node[i].children && node[i].children.length) { this.buildDisplayLabel(node[i].children, labels, label); } else { labels.push(label); } } } onSelectionChange(selectedOptions: any[]): void { if (selectedOptions && selectedOptions.length) { let labels: string[] = []; this.buildDisplayLabel(selectedOptions, labels, ''); this._text = labels.join(', '); } else { this._text = 'Unselect'; } } }