图片不重要
在这里插入图片描述

用getNode获得树的层级level,判断层级是不是前三级,是的话加入默认展开id数组:default-expanded-keys=“defaultExpandedIdArr”

	//拿树的第一级遍历调用getNodeLevel()
    if( this.treeData && this.treeData.length > 0) {
      this.treeData.map(item => {
        this.getNodeLevel(item.id)
      })
    }
  getNodeLevel(id) { //获得前三级展开的数组
    let node = this.$refs.leftTreeRef.getNode(id)
    if(node.level < 4) {
      this.defaultExpandedIdArr.push(node.data.value)
      this.$nextTick(() => {
        if(node.data.children) { //判断是否存在下一级
      	   //注意:node是当前节点,如果getNodeLevel参数传成了 node.data.id而不是node.data.children.id,会无线循环下去,页面直接卡死(就是当前节点一直查询当前节点信息)
          node.data.children.map(item => {
            this.getNodeLevel(item.value)
          })
        }
      })
    }
  },
Logo

技术共进,成长同行——讯飞AI开发者社区

更多推荐