elementui下拉框显示树结构


 https://www.vue-treeselect.cn/

前端树,下拉框显示树结构 

:defaultExpandLevel="Infinity" 设置  Infinity 为默认使所有分支节点扩展
在package.json中加入依赖 :
"@riophae/vue-treeselect": "^0.4.0",

前端部分代码:
          <treeselect
              :options="moduleOptions"
              style="line-height: 20px; width: 90%;"       
 
              :auto-select-ancestors="false"
              placeholder="请选择所属模块"
              v-model="moduleForm.module"
              v-if="projectObj && projectObj.project !== 'init'"
            />
 
import Treeselect from '@riophae/vue-treeselect'
import '@riophae/vue-treeselect/dist/vue-treeselect.css'
 
 
  components: {
    Treeselect
  },


getAllModule() {
      let param = {} let self = this commData.getAllModule(param).then(data => { if (data.success && data.data) { let rootArr = [] for (let i = 0; i < data.data.length; i++) { if (data.data[i].parentId === '0') { rootArr.push(data.data[i]) } } this.getMenuChildTree(data.data, rootArr) } }).catch(e => { self.$message.error('服务端出错') }) }, getMenuChildTree(datas, dataArray) { for (let j = 0; j < dataArray.length; j++) { let dataArrayIndex = dataArray[j] let childrenArray = [] let Id = dataArrayIndex.id for (let i = 0; i < datas.length; i++) { let data = datas[i] let parentId = data.parentId if (parentId === Id) { let objTemp = { id: data.id, label: data.module } childrenArray.push(objTemp) } } if (childrenArray.length > 0) { dataArrayIndex.children = childrenArray this.getMenuChildTree(datas, childrenArray) } }
    this.moduleOptions = dataArray
    },

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM