1.表單編輯回顯問題處理-添加leaf葉子節點
<el-form-item label="所在地區" prop="addressCode" required><el-cascader ref="cascader" v-model="form.addressCode" :props="props" @change="addressChange" :change-on-select="true"></el-cascader></el-form-item>
props: {label: 'name',value: 'id',lazy: true,checkStrictly: false,lazyLoad(node, resolve) {const stopLevel = 4// 當達到或超過停止層級時直接返回空if (node.level >= stopLevel - 1) {return resolve([])}listRegion({pageSize: 1000,parentId: node && node.data ? node.data.id : '000000'}).then(res => {const nodes = res.rows.map(item => ({...item,// 動態設置葉子節點狀態(當前層級==停止層級-1時)leaf: node.level === stopLevel - 2}))resolve(nodes)})}},
2. 表單重復使用,lazyLoad第二次不調用
<el-form-item label="所在地區" prop="addressCode" required><el-cascader ref="cascader" v-if="isRender" v-model="form.addressCode" :props="props" @change="addressChange" :change-on-select="true"></el-cascader></el-form-item>
添加【isRender】,在表單reset()方法里掛載和銷毀
this.isRender = falsethis.$nextTick(()=>{this.isRender = true})
3. 表單重復使用,lazyLoad時調用時不調用
使用:key標識dom元素
<el-form-item label="所在地區" prop="addressCode" required><el-cascader ref="cascader" :key="item.id" v-model="form.addressCode" :props="props" @change="addressChange" :change-on-select="true"></el-cascader></el-form-item>