element级联选择器表单回显
时间: 2023-07-05 13:24:52 浏览: 97
详解关于element级联选择器数据回显问题
要实现element级联选择器表单回显,可以使用v-model指令来实现双向绑定。具体步骤如下:
1. 在父组件中定义一个对象,用于保存级联选择器的选中值,如:
```
<template>
<el-cascader v-model="selectedOptions" :options="options"></el-cascader>
</template>
<script>
export default {
data() {
return {
options: [
{
value: 'zhinan',
label: '指南',
children: [
{
value: 'shejiyuanze',
label: '设计原则',
children: [
{
value: 'yizhi',
label: '一致'
},
{
value: 'fankui',
label: '反馈'
}
]
}
]
}
],
selectedOptions: [] // 保存级联选择器选中值的对象
};
}
};
</script>
```
2. 将保存级联选择器选中值的对象传递给子组件,如:
```
<template>
<el-cascader
v-model="value"
:options="options"
@change="handleChange"
></el-cascader>
</template>
<script>
export default {
props: {
value: {
type: Array,
default: () => []
}
},
data() {
return {
options: [
{
value: 'zhinan',
label: '指南',
children: [
{
value: 'shejiyuanze',
label: '设计原则',
children: [
{
value: 'yizhi',
label: '一致'
},
{
value: 'fankui',
label: '反馈'
}
]
}
]
}
]
};
},
watch: {
value(newValue) {
this.selectedOptions = newValue;
}
}
};
</script>
```
在子组件中,通过watch监听value的变化,将选中值赋值给selectedOptions。
3. 在父组件中,通过v-model绑定selectedOptions,实现双向绑定,如:
```
<template>
<el-cascader v-model="selectedOptions" :options="options"></el-cascader>
</template>
<script>
export default {
data() {
return {
options: [
{
value: 'zhinan',
label: '指南',
children: [
{
value: 'shejiyuanze',
label: '设计原则',
children: [
{
value: 'yizhi',
label: '一致'
},
{
value: 'fankui',
label: '反馈'
}
]
}
]
}
],
selectedOptions: [] // 保存级联选择器选中值的对象
};
},
mounted() {
// 模拟回显数据
this.selectedOptions = ['zhinan', 'shejiyuanze', 'yizhi'];
}
};
</script>
```
通过mounted钩子函数模拟回显数据,将选中值赋值给selectedOptions,从而实现级联选择器表单回显。
阅读全文