el-cascader动态加载

我在项目中,el-cascader采用的动态加载方式,怎么让我点击下拉框时触发加载数据,而不是自动加载第一层级数据?
我在data里定义一个空的cascaderProps,然后在focus方法中代码

this.cascaderProps = {
                checkStrictly:true,
                lazy:true,
                lazyLoad(node, resolve){
                  const { level } = node
                  let id = node.level === 0 ? that.$store.state.user.currDept : node.value
                  that.api(id).then(res=>{
                    if(res.code === '200'){
                      const nodes = res.data.map(item => ({
                        value: item.user_dept,
                        label: item.user_deptname,
                        leaf: level >= 5
                      }))
                      resolve(nodes);
                    }
                  })
                },
            }

这样并不会加载第一层级数据

阅读 4.2k
1 个回答

我只想到了一个苯方法:在首页先获取第一层级数据,保存下来,然后在需要用到的地方取出来放入lazyload中。其他方法暂时没想到

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题