數據處理的幾種方式總結

1.如何獲取目錄子級的id來進行傳值函數

效果圖和數據格式:this

數據格式:spa

answers: [
{
    label:"頂級目錄",
    value:"undefined",
    key:1
    children:[
        {
            label:'二級目錄',
            value:'undefined'
            key:2,
            children:[
                {
                    label:'子級目錄',
                    value:'ed1eb230-6549-11e8-bf8a-2f7bf305f9b8',
                    key:3
                }
            ]
        }
    ]
}
]

 注:key值得惟一性
code

解決思路:遞歸函數=>知足條件,跳出blog

 let xz_ml = this.state.xz_ml;
    let ml_arr = [];
    let selectKeyArr_arr = this.state && this.state.selectKeyArr;//目錄key值
    const ml = (data) => {
      data && data.map((item, index) => {
        console.log(item.children,'item.children');
        //!item.children是最子級節點。不知足提交走else繼續調用自身,直到知足條件
        if (!item.children) {
          if (selectKeyArr_arr && (selectKeyArr_arr.indexOf(item.key) != -1)) { 
            item.value && ml_arr.push(item.value)
          }
        } else {
          ml(item.children);
        }
      })
    }
    console.log(answers,'answers');
    console.log(selectKeyArr_arr,'selectKeyArr_arr');
    console.log(xz_ml,'zzz');
    if (xz_ml == "頂級目錄") {
      ml(answers);
    } 
相關文章
相關標籤/搜索