javascript - js中如何通過(guò)id查詢或者刪除樹(shù)形結(jié)構(gòu)某一個(gè)節(jié)點(diǎn)啊
問(wèn)題描述
ant design就是要這種數(shù)據(jù)結(jié)構(gòu), 才可以形成各類tree控件, 這點(diǎn)真不如ztree之類的, 人家只需要1個(gè)數(shù)組就行了, 指定好id和parentId就自動(dòng)出tree, antd還得弄個(gè)children, 沒(méi)感覺(jué)哪好
比如樹(shù)形結(jié)構(gòu)是這樣的
[ {id: ’1’,name: ’a’,pid: ’0’,children: [ {id: ’11’,name: ’a-1’,pid: ’1’,children: [ id: ’111’, name: ’a-1-1’, pid: ’11’, children: null] }] }, {id: ’2’,name: ’b’,pid: ’0’,children: null, }]
那么如果能快速找到id: ’111’這個(gè)節(jié)點(diǎn)呢, 只能用遞歸查詢嗎, 有沒(méi)有更好的方法對(duì)他進(jìn)行以下操作: 添加子節(jié)點(diǎn): 即在他children中添加刪除該節(jié)點(diǎn): 即刪除id: ’111’這個(gè)節(jié)點(diǎn)更新節(jié)點(diǎn)
問(wèn)題解答
回答1:加個(gè)轉(zhuǎn)換層,重構(gòu)的數(shù)據(jù)用id作為索引
相關(guān)文章:
1. android - NavigationView 的側(cè)滑菜單中如何保存新增項(xiàng)(通過(guò)程序添加)2. tp5 不同控制器中的變量調(diào)用問(wèn)題3. 微信小程序可以用gulp,webpack嗎?4. mysql服務(wù)無(wú)法啟動(dòng)1067錯(cuò)誤,誰(shuí)知道正確的解決方法?5. ueditor上傳服務(wù)器提示后端配置項(xiàng)沒(méi)有正常加載,求助!!!!!6. python - 為什么正常輸出中文沒(méi)有亂碼,zip函數(shù)之后出現(xiàn)中文編程unicode編碼的問(wèn)題,我是遍歷輸出的啊。7. 老師 我是一個(gè)沒(méi)有學(xué)過(guò)php語(yǔ)言的準(zhǔn)畢業(yè)生 我希望您能幫我一下8. 這段代碼既不提示錯(cuò)誤也看不到結(jié)果,請(qǐng)老師明示錯(cuò)在哪里,謝謝!9. php7.3.4中怎么開(kāi)啟pdo驅(qū)動(dòng)10. 提示語(yǔ)法錯(cuò)誤語(yǔ)法錯(cuò)誤: unexpected ’abstract’ (T_ABSTRACT)
