最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

element-ui?tree?手動展開功能實現(xiàn)(異步樹也可以)

 更新時間:2022年08月12日 11:00:52   作者:追極  
這篇文章主要介紹了element-ui?tree?手動進行展開(異步樹也可以),項目中用到了vue的element-ui框架,用到了el-tree組件,需要的朋友可以參考下

背景

項目中用到了vue的element-ui框架,用到了el-tree組件。由于數(shù)據(jù)量很大,使用了數(shù)據(jù)懶加載模式,即異步樹。異步樹采用復選框進行結點選擇的時候,沒法自動展開,官方文檔找了半天也沒有找到好的辦法! 找不到相關的配置,或者方法可以使用。 經過調試與閱讀elment-ui源碼才發(fā)現(xiàn)有現(xiàn)成的方法可以進行結點展開。下面就介紹結點展開的實現(xiàn)!

1.監(jiān)聽復選框點擊事件check

<el-tree
        :props="mulprops"
        :load="loadNode"
        lazy
        node-key="id"
        show-checkbox
        accordion
        @current-change="currentChange"
        :filter-node-method="filterNode"
        @check="handleCheck"
        ref="tree"
        :default-checked-keys="defaultCheckedNodes"
        :default-expanded-keys="defaultExpandedNodes">
    </el-tree>

2.手動展開,使用node.expand()方法

handleCheck(nodeData,  treeChecked) {
      let node = this.$refs.tree.getNode(nodeData.id)
      //將選中的未展開的節(jié)點進行展開
      if(node.checked && !node.expanded){
        node.expand(function(){
          for(let i=0; i< node.childNodes.length; i++){
            node.childNodes[i].expand()
          }
        })
      }
    }

項目中的實現(xiàn)

(復選框勾選后能自動展開并選中,先展開再勾選也可以自動展開)

1.監(jiān)聽check-change事件

<el-tree
        :props="mulprops"
        :load="loadNode"
        lazy
        node-key="id"
        show-checkbox
        accordion
        @check-change="handleCheckChange"
        :filter-node-method="filterNode"
        ref="tree"
        :default-checked-keys="defaultCheckedNodes"
        :default-expanded-keys="defaultExpandedNodes"
    >
    </el-tree>

2.編寫展開結點方法

handleCheckChange(nodeData, nodeSelected) {
      //展開選中的未展開的節(jié)點
      let tree = this.$refs.tree;
      let node = tree.getNode(nodeData.id)
      //展開選中的未展開的節(jié)點
      this.expandNotExpandNodes(node);

      //具體業(yè)務實現(xiàn)
      console.log(nodeData, nodeSelected)
    },
    //展開選中的未展開的節(jié)點
    expandNotExpandNodes(node) {
      let tree = this.$refs.tree;
      if (node.checked && !node.expanded && !node.isLeaf) {
        node.expand(function () {
          let childNodes = node.childNodes;
          for (let i = 0; i < childNodes.length; i++) {
            let childNode = childNodes[i];
            //手動觸發(fā)check-change事件,事件處理函數(shù)中回繼續(xù)調用此函數(shù),形成遞歸展開
            tree.$emit('check-change', childNode.data, childNode.checked, childNode.indeterminate);
          }
        })
      }
    },

到此這篇關于element-ui tree 手動進行展開(異步樹也可以)的文章就介紹到這了,更多相關element-ui tree手動展開內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Vee-Validate的使用方法詳解

    Vee-Validate的使用方法詳解

    本篇文章主要介紹了Vee-Validate的使用方法詳解,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-09-09
  • VUE中filters過濾器的兩種用法實例

    VUE中filters過濾器的兩種用法實例

    vue中過濾器的作用可被用于一些常見的文本格式化,也就是修飾文本,但是文本內容不會改變,下面這篇文章主要給大家介紹了關于VUE中filters過濾器的兩種用法,需要的朋友可以參考下
    2022-04-04
  • 使用Vue.$set()或者Object.assign()修改對象新增響應式屬性的方法

    使用Vue.$set()或者Object.assign()修改對象新增響應式屬性的方法

    vue代碼中,只要在data對象里定義的對象,賦值后,任意一個屬性值發(fā)生變化,視圖都會實時變化,這篇文章主要介紹了使用Vue.$set()或者Object.assign()修改對象新增響應式屬性,需要的朋友可以參考下
    2022-12-12
  • vue 2 實現(xiàn)自定義組件一到多個v-model雙向數(shù)據(jù)綁定的方法(最新推薦)

    vue 2 實現(xiàn)自定義組件一到多個v-model雙向數(shù)據(jù)綁定的方法(最新推薦)

    有時候我們需要對一個組件綁定自定義 v-model,以更方便地實現(xiàn)雙向數(shù)據(jù),例如自定義表單輸入控件,這篇文章主要介紹了vue 2 實現(xiàn)自定義組件一到多個v-model雙向數(shù)據(jù)綁定的方法,需要的朋友可以參考下
    2024-07-07
  • Vue-element-admin平臺側邊欄收縮控制問題

    Vue-element-admin平臺側邊欄收縮控制問題

    這篇文章主要介紹了Vue-element-admin平臺側邊欄收縮控制問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • antd vue 如何調整checkbox默認樣式

    antd vue 如何調整checkbox默認樣式

    這篇文章主要介紹了antd vue 如何調整checkbox默認樣式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-12-12
  • Vue實現(xiàn)無縫輪播效果

    Vue實現(xiàn)無縫輪播效果

    這篇文章主要為大家詳細介紹了Vue實現(xiàn)無縫輪播效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-04-04
  • vue項目優(yōu)化之通過keep-alive數(shù)據(jù)緩存的方法

    vue項目優(yōu)化之通過keep-alive數(shù)據(jù)緩存的方法

    本篇文章主要介紹了vue項目優(yōu)化之通過keep-alive數(shù)據(jù)緩存的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-12-12
  • vue路由跳轉攜帶參數(shù)的方式總結

    vue路由跳轉攜帶參數(shù)的方式總結

    我們知道在vue中每個頁面都需要在路由中聲明,下面這篇文章主要給大家介紹了關于vue路由跳轉攜帶參數(shù)的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-10-10
  • 基于vue封裝下拉刷新上拉加載組件

    基于vue封裝下拉刷新上拉加載組件

    這篇文章主要為大家詳細介紹了基于vue封裝下拉刷新上拉加載組件,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-09-09

最新評論

榆树市| 惠州市| 石河子市| 墨脱县| 永丰县| 榆社县| 小金县| 镇坪县| 承德县| 朝阳市| 青冈县| 潼南县| 乐昌市| 南华县| 玛多县| 南宫市| 宁夏| 石台县| 保康县| 文登市| 九台市| 康平县| 石家庄市| 游戏| 西乡县| 宾川县| 潜江市| 阿城市| 明星| 北碚区| 通化县| 吉木乃县| 吴堡县| 高密市| 隆昌县| 内江市| 镇江市| 阿荣旗| 阳朔县| 呼伦贝尔市| 塘沽区|