关于element-ui 中的级联选择器回显和lazy-load
回看的主要思路就是添加一个中间件来存储获取到的结果,因为lazy-load拿到数据后,通过关键词value来显示数据,那么用v-module来绑定相同格式的值就能在刷新的同时显示对应值,例如:我通过lazy-load 获取到的级联格式是[ '6 ' ,' 96'] ,那么我想要回显时置入的tempplace也需要是这样的格式。
PS:lazy-load 中 通过leaf 来限制已达到最后一层。
tempplace: ['6', '96'],
// lastplace: '',
form: {
content: '',
departmentCode: '',
educationRequiredCode: '',
jobCode: '',
jobTypeCode: '',
recruitCount: 0,
recruitmentJobId: '',
workplaceList: []
},
<el-cascader
v-model="form.workplaceList"
:props="props"
@change="posihandleChange"
ref="placeSelect"
style="width:465px"
></el-cascader>
props: {
value: 'dicCode',
label: 'districtName',
lazy: true,
lazyLoad(node, resolve) {
const level = node.level
if (level === 0) {
const dic = 1
vm.getPosition(dic).then(res => {
const nodes = res
resolve(nodes)
})
} else if (level === 1) {
const dic = node.data.dicCode
vm.getPosition(dic).then(res => {
const nodes = []
res.map((item, index) => {
item.leaf = 'level > 1'
// }
nodes[index] = item
})
resolve(nodes)
})
}
}
}