前言 項目上實現某個功能,使用到了 el-select 和 el-tree 組合實現,記錄下兩者結合的實現過程。 要求 根據項目介面提供的數據,el-tree 里的數據是一次性返回來的,點擊最後一層級時,請求介面,在點擊層級下方追加數據 追加的數據要顯示勾選框,可進行勾選,且是單選 勾選後需要返回勾 ...
前言
項目上實現某個功能,使用到了 el-select 和 el-tree 組合實現,記錄下兩者結合的實現過程。
要求
- 根據項目介面提供的數據,el-tree 里的數據是一次性返回來的,點擊最後一層級時,請求介面,在點擊層級下方追加數據
- 追加的數據要顯示勾選框,可進行勾選,且是單選
- 勾選後需要返回勾選的層級以及它的父級
實現效果如下:
數據回顯效果:
實現關鍵部分
el-tree里的顯示勾選框不符合當前“追加的數據要顯示勾選框,可進行勾選”這個需求,所以我修改了el-tree的源碼進行使用。
-
追加子級數據,el-tree 文檔提供了這個這個方法,可以追加子級
-
數據對象里有指定欄位才顯示勾選框,這裡我指定欄位為 currentShowCheck,數據追加的時候把指定需要顯示勾選框的欄位加上
修改源碼,數據中有 currentShowCheck 欄位的則顯示 checkbox
這樣子就實現以上的效果了