vue3如何获取到Form表单中的$ref?

文章展示了如何在Vue.js应用中使用ElementUI库创建表单,并通过`resetFields`方法重置表单数据。重点在于处理表单重置功能,包括三种不同的实现方式,并强调了`prop`属性的重要性,它是表单验证和重置的关键。
摘要由CSDN通过智能技术生成
<el-form
        :model="searchForm"
        label-width="90px"
        :inline="true"
        ref="searchFormRef"
      >
        <el-form-item label="部门名称:" prop="userName">
          <el-input v-model="searchForm.userName" :style="labelWidth" />
        </el-form-item>
        <el-form-item label="手机号码:" prop="phonenumber">
          <el-input v-model="searchForm.phonenumber" :style="labelWidth" />
        </el-form-item>
        <el-form-item label="状态:" prop="status">
          <el-select
            v-model="searchForm.status"
            placeholder="请选择"
            :style="labelWidth"
          >
            <el-option
              v-for="item in statusList"
              :key="item.value"
              :label="item.label"
              :value="item.value"
            />
          </el-select>
        </el-form-item>
        <el-form-item label="创建时间:">
          <el-date-picker
            v-model="dateValue"
            value-format="YYYY-MM-DD"
            type="daterange"
            range-separator="至"
            start-placeholder="开始日期"
            end-placeholder="结束日期"
            :style="labelWidth"
            @change="handleDataPicker"
          />
        </el-form-item>
        <el-form-item>
          <el-button type="primary" icon="Search" @click="handleSearch"
            >搜 索</el-button
          >
          <el-button icon="Refresh" @click="handleReset(searchFormRef)">重 置</el-button>
        </el-form-item>
      </el-form>
const { proxy } = getCurrentInstance();
const searchFormRef = ref(null);

/** 重置点击事件*/
const handleResets = (formEl) => {
  // 方法一:
  searchFormRef.value.resetFields(); //需定义searchFormRef

  // 方法二:
  proxy.$refs.searchFormRef.resetFields()  //通过获取当前实例的方式

  // 方法三:
  formEl.resetFields(); //官方提供,需在点击事件中传参


  // 遇见的bug:漏掉了 prop 属性,导致试了多种方法都是重置表单失败,注:定义了 validate、resetFields 的方法时,该属性是必填的。
};

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值