使用el-dialog内嵌表单时候,发现表单重置失效,点击不同的数据,表单默认值不会发生改变。
解决办法
利用v-if重新渲染元素的特点,给el-dialog加上v-if
<el-dialog class="addForm" title="添加" @close="reset" :visible.sync="dialogFormVisible" v-if="dialogFormVisible">
<el-form ref="formName" class="formName" method='POST'>
<template v-for="(eachFormObj, eachFormIndex) in forms.formdata">
<el-row :key="`row-${eachFormIndex}`">
<div class="wrapper--forms">
<el-col v-for="(field, index) in eachFormObj.fields" :key="index" :span="field.span" v-bind="field" class="form__group">
<component :is="field.fieldType" :currentField="field" class="form__field" @updateform="updateform">
</component>
</el-col>
</div>
</el-row>
</template>
<el-divider key="lastline"> 请核对上列内容 </el-divider>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" class="submit" fmd="fmdbtn" >确 定</el-button>
<el-button @click="dialogFormVisible = false" class="submit">取 消</el-button>
</div>
</el-dialog>
本文介绍了解决在使用Element UI的el-dialog组件内嵌表单时遇到的表单重置失效问题的方法。通过在el-dialog上添加v-if指令,可以利用其重新渲染元素的特性,确保点击不同数据时表单默认值正确更新。
1639

被折叠的 条评论
为什么被折叠?



