最近刚进行 Vue3 + Element plus 项目实践,在进行表单二次封装的时候,表单元素 select 下拉框组件选中一个选项后显示的是 value 而不是 label,下面上代码:
原来的写法:
javascript
<el-select
v-if="v.type === 'select'"
v-model="formModel[v.id]"
:placeholder="v.placeholder"
clearable
>
<el-option
v-for="(item, i) in v.option"
:value="item.value"
:key="`${i}${v.value}`"
>
{{item.label}}
</el-option>
</el-select>
这样写,选中一个选项 "是" 后,下拉框中显示的一直是 value---1,而不是 label---是,如图:
修改后的写法:
javascript
<el-select
v-if="v.type === 'select'"
v-model="formModel[v.id]"
:placeholder="v.placeholder"
clearable
>
<el-option
v-for="(item, i) in v.option"
:label="item.label"
:value="item.value"
:key="`${i}${v.value}`"
/>
</el-select>
这样写,选中一个选项 "是" 后,下拉框中显示的是 label---是,而不是 value---1,如图