使用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>