antd Form组件表单在vue3中的使用方式

 更新时间:2023年04月22日 09:02:38   作者:Akimoto Hiroshi  
这篇文章主要介绍了antd Form组件表单在vue3中的使用方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

antd Form组件表单在vue3使用

antd Form表单组件有个最需要注意的问题,

官方文档里写的很清楚

这是什么意思,我们下面说个例子就明白了:

<template>
  <a-form
    ref="formRef"
    :model="formState"
    :rules="rules"
    :label-col="labelCol"
    :wrapper-col="wrapperCol"
  >
    <a-form-item ref="username" name="username">
      <label>Username:</label>
      <a-input v-model:value="formState.username" />
    </a-form-item>
    <a-form-item :wrapper-col="{ span: 14, offset: 4 }">
      <a-button type="primary" @click="onSubmit">Create</a-button>
      <a-button style="margin-left: 10px" @click="resetForm">Reset</a-button>
    </a-form-item>
  </a-form>
</template>

这里<a-form-item>的标签name属性需要和表单对象formState里面的字段username对应上,包含在标签里面的<a-input>标签的v-model:value绑定formState.username

这里a-form-item里面的name属性是用来给rules验证规则对应使用的

import { defineComponent, reactive, ref, toRaw } from "vue"
export default defineComponent({
  setup() {
    const formState = reactive({
      name: "",
      username: '',
      password: '',
      password2: '',
      code: ''
    })
    const rules = {
      username: [
        { required: true, message: "请输入用户名", trigger: "blur" },
        { min: 3, max: 5, message: "Length should be 3 to 5", trigger: "blur" }
      ]
    }
    
    return {
      labelCol: {
        span: 4,
      },
      wrapperCol: {
        span: 14,
      },
      formState,
      rules
    }
  }
})

表单数据存在formState里面

验证规则存在rules里面

最后别忘了返回:

效果:

当失去焦点的时候,会提示用户

输入字符长度不在3-5之间的话,也会提示:

但是如果这样写,就不会有错误提示了:

效果:

失去焦点以后,并不会提示:

这就是官方文档里面提到的,<a-form-item>只会监听第一个子元素的变化

如果我们调换一下位置:

又可以提示了:

如果非要把label放在输入框上面,又不想影响提示功能,怎么办??

<a-form-item>上面套一个div不就完事了:

效果:

当然最方便的就是默认的样式,直接在<a-form-item>标签里面配置label属性就可以了:

效果:

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 如何获取this.$store.dispatch的返回值

    如何获取this.$store.dispatch的返回值

    这篇文章主要介绍了如何获取this.$store.dispatch的返回值问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-01-01
  • vue+element_ui上传文件,并传递额外参数操作

    vue+element_ui上传文件,并传递额外参数操作

    这篇文章主要介绍了vue+element_ui上传文件,并传递额外参数操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-12-12
  • element-ui 远程搜索组件el-select在项目中组件化的实现代码

    element-ui 远程搜索组件el-select在项目中组件化的实现代码

    这篇文章主要介绍了element-ui 远程搜索组件el-select在项目中组件化,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-12-12
  • vue实现自定义组件挂载原型上

    vue实现自定义组件挂载原型上

    这篇文章主要介绍了vue实现自定义组件挂载原型上方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-08-08
  • vue-mugen-scroll组件实现pc端滚动刷新

    vue-mugen-scroll组件实现pc端滚动刷新

    这篇文章主要为大家详细介绍了vue-mugen-scroll组件实现pc端滚动刷新,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-08-08
  • vue+iview分页组件的封装

    vue+iview分页组件的封装

    这篇文章主要为大家详细介绍了vue+iview分页组件的封装,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-11-11
  • vue中filter的应用场景详解

    vue中filter的应用场景详解

    这篇文章主要为大家介绍了vue中filter的应用场景,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2021-11-11
  • Vue数字输入框组件使用方法详解

    Vue数字输入框组件使用方法详解

    这篇文章主要为大家详细介绍了Vue数字输入框组件的使用方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-02-02
  • 详解vue服务端渲染(SSR)初探

    详解vue服务端渲染(SSR)初探

    本篇文章主要介绍了详解vue服务端渲染(SSR)初探,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-06-06
  • elementUI Tree 树形控件单选实现示例

    elementUI Tree 树形控件单选实现示例

    在ElementUI中树形控件本身不支持单选功能,本文就来介绍一下如何实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-06-06

最新评论