搜尋

首頁  >  問答  >  主體

javascript - 怎麼實作帶有checkbox的tree樹元件多層嵌套的連動

我目前在做帶有checkbox的tree元件,我渲染的思路是從父類別向子類別遞歸,有children屬性就讓children呼叫自己,程式碼如下

     data = [{
        label: 111,
        children: [{
            label: 222,
        }]
      },  {
        label: 333
      }]
    translate = (content, key, first) => {
        content.forEach((i, index) => {
            i.key = key + (first ? '' : '-') + (index + 1);
            i.checked = this.defaultCheckedKey.toString().indexOf(i.key) > -1;
            i.expanded = this.defaultExpandedKey.toString().indexOf(i.key) > -1;
            i.nodeLevel = i.key.split('-').length;
            i.checked && selectedKeys.push(i.key);   
            if (i.children && i.children.length > 0) {
                this.translate(i.children, i.key, false);
            }
        })
    };
    ngOnInit() {      
       this.translate(this.data, '', true);
    }

現在需要做checkbox的選擇聯動,從父類向子類遞歸的話,需要n-1次遞歸,感覺很影響性能,有大神給個checkbox多層嵌套聯動的解決方案麼

滿天的星座滿天的星座2749 天前712

全部回覆(1)我來回復

  • 巴扎黑

    巴扎黑2017-06-26 10:52:15

    http://www.treejs.cn/v3/main....

    看下這個插件 能否滿足

    回覆
    0
  • 取消回覆