【问题标题】:Element resetFields() does not take effect元素resetFields() 不生效
【发布时间】:2021-09-29 07:29:18
【问题描述】:

我用Vue3和Element Plus创建了Form,但是Form的resetFields()没有生效。 表单无法自动刷新。


子组件(Edit.vue)

<template>
    <el-dialog title="edit" v-model="modelValue">
      <el-form :model="form" ref="formDate">
      ...
      </el-form>
    </el-dialog>
</template>

父组件

<template>

<Edit
  v-model:form="form"
  v-model="dialogFormVisible"
  ref="editDialog"
></Edit>

</template>
...
export default {
  components: {
    Edit,
  },
  setup() {
      const state = reactive({
        dialogFormVisible: false,
      })

      const editDialog = ref(null);

      const initForm = () => {
        state.dialogFormVisible = true;

        nextTick(() => {
        console.log(editDialog.value.formDate);
        editDialog.value.formDate.resetFields();
      });

      return {
        ...toRefs(state),
        editDialog,
        initForm,
      };
  }

editDialog.value.formDate 不是未定义的:enter image description here

但是editDialog.value.formDate.resetFields()没有生效,而且是未定义的。

【问题讨论】:

  • 请添加Edit组件的代码。
  • Edit 组件就是这个child-component 。它的外部是对话框标签

标签: javascript vue.js vue-component


【解决方案1】:

尝试改变

editDialog.value.formDate.resetFields()

editDialog.value.formDate.value.resetFields()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-10-05
    • 2020-09-23
    • 2016-05-05
    • 1970-01-01
    • 2011-07-15
    • 1970-01-01
    • 2022-07-22
    相关资源
    最近更新 更多