修改前,因为重复渲染DOM导致绑定rules失效
bash
修改前代码使用 computed 计算出渲染的DOM,影响rules事件
<el-form
ref="form"
inline
:model="billDetailCopy"
:rules="rules"
size="small"
label-position="right"
label-width="110px"
class="addInvoice-content-input">
<el-row>
<el-form-item v-for="(item,index) in filter(ordinaryList)" :key="index" :prop="item.key" :label="item.label" >
<el-form-item/>
<el-form/>
修改后,将切换的DOM使用v-show都渲染在页面,不会让rules错乱。
bash
修改后各渲染各的
<el-form
v-show="billDetailCopy.type === '增值税普通发票'"
ref="form1"
inline
:model="billDetailCopy"
:rules="rules"
size="small"
label-position="right"
label-width="110px"
class="addInvoice-content-input">
<el-row>
<el-form-item v-for="(item,index) in ordinaryList" :key="index" :prop="item.key" :label="item.label" >
<el-form-item/>
<el-form/>