看了网上的攻略和同事的代码
有采用 v-if显隐开关,重新渲染组件的方法。
有从后端就将回显的名称返回,再用@blur做监听,做伪显示加载。
其实el-cascader自己就支持。
后端需要返回这条路径id的list,从选择的那个节点到原始根节点的id
然后通过
this.$set(this.formData, 'directoryId', path)
最关键的一步,给lazyload设置一点点小小的延迟
async lazyLoad(node, resolve) {
let nodes = await queryDirectoryById(node.data?.id)
setTimeout(() => {
resolve(nodes)
}, 200)
},