element-plus 表单验证失效

发布于 2022-09-12 23:29:08 字数 1656 浏览 17 评论 0

在Vue3的尝试使用element-plus的表单验证,发现表单验证失效。
点击输入框再失焦不会提示
不输入值直接点击提交,valid变量的值为true

环境

  "dependencies": {
    "element-plus": "^1.0.2-beta.40",
    "lodash": "^4.17.21",
    "vue": "^3.0.4",
    "vue-router": "^4.0.6"
  },
  "devDependencies": {
    "typescript": "^4.2.4",
    "sass": "^1.32.11",
    "vite": "^1.0.0-rc.13",
    "@vue/compiler-sfc": "^3.0.4"
  }

代码

  <el-dialog v-model="visible">
    <el-form :model="typeForm" :rules="rules" ref="typeFormRef">
      <el-form-item label="类型名称" prop="name">
        <el-input v-model="typeForm.name"></el-input>
      </el-form-item>
      <el-form-item label="单位" prop="unit">
        <el-input v-model="typeForm.unit" maxlength="5" />
      </el-form-item>
    </el-form>
    <template #footer>
      <el-button @click="submitType">提交</el-button>
    </template>
  </el-dialog>
  
    // 提交表单逻辑
    let typeForm = reactive({ name: "", unit: "" });
    let rules = {
      name: [{ require: true, message: "请输入类型名", trigger: "blur" }],
      unit: [{ require: true, message: "请输入类型单位", trigger: "blur" }],
    };
    let typeFormRef = ref(null);
    function submitType() {
      (typeFormRef.value as any).validate((valid: any) => {
        console.log(valid);
        if (valid) {
          console.log(typeForm)
        } else {
          return false;
        }
      });
    }

    return {
      types,
      submitType,
      typeFormRef,
      visible,
      changeVisible,
      rules,
      typeForm,
    };

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

再浓的妆也掩不了殇 2022-09-19 23:29:08

name:[{required:true,message:"请输入类型名"}]单词拼写错误

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文