antd Form組件表單在vue3中的使用方式
antd Form組件表單在vue3使用
antd Form表單組件有個(gè)最需要注意的問(wèn)題,
官方文檔里寫的很清楚
這是什么意思,我們下面說(shuō)個(gè)例子就明白了:
<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>
的標(biāo)簽name
屬性需要和表單對(duì)象formState
里面的字段username
對(duì)應(yīng)上,包含在標(biāo)簽里面的<a-input>
標(biāo)簽的v-model:value
綁定formState.username
這里a-form-item
里面的name
屬性是用來(lái)給rules
驗(yàn)證規(guī)則對(duì)應(yīng)使用的
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: "請(qǐng)輸入用戶名", trigger: "blur" }, { min: 3, max: 5, message: "Length should be 3 to 5", trigger: "blur" } ] } return { labelCol: { span: 4, }, wrapperCol: { span: 14, }, formState, rules } } })
表單數(shù)據(jù)存在formState
里面
驗(yàn)證規(guī)則存在rules
里面
最后別忘了返回:
效果:
當(dāng)失去焦點(diǎn)的時(shí)候,會(huì)提示用戶
輸入字符長(zhǎng)度不在3-5之間的話,也會(huì)提示:
但是如果這樣寫,就不會(huì)有錯(cuò)誤提示了:
效果:
失去焦點(diǎn)以后,并不會(huì)提示:
這就是官方文檔里面提到的,<a-form-item>
只會(huì)監(jiān)聽(tīng)第一個(gè)子元素的變化
如果我們調(diào)換一下位置:
又可以提示了:
如果非要把label放在輸入框上面,又不想影響提示功能,怎么辦??
<a-form-item>
上面套一個(gè)div不就完事了:
效果:
當(dāng)然最方便的就是默認(rèn)的樣式,直接在<a-form-item>
標(biāo)簽里面配置label
屬性就可以了:
效果:
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
詳解VUE-地區(qū)選擇器(V-Distpicker)組件使用心得
這篇文章主要介紹了詳解VUE-地區(qū)選擇器(V-Distpicker)組件使用心得,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-05-05Vue3中實(shí)現(xiàn)發(fā)送網(wǎng)絡(luò)請(qǐng)求功能(最新推薦)
Axios是一個(gè)基于Promise的HTTP客戶端,可以在瀏覽器和Node.js中用于發(fā)送HTTP請(qǐng)求,本文主要介紹在Vue3中實(shí)現(xiàn)發(fā)送網(wǎng)絡(luò)請(qǐng)求功能,感興趣的朋友一起看看吧2023-12-12vue倒計(jì)時(shí)刷新頁(yè)面不會(huì)從頭開始的解決方法
在本篇文章里小編給大家整理的是關(guān)于vue倒計(jì)時(shí)刷新頁(yè)面不會(huì)從頭開始的解決方法,需要的朋友們參考下。2020-03-03Vue實(shí)現(xiàn)右鍵菜單組件的超詳細(xì)教程(支持快捷鍵)
右鍵菜單組件非常常見(jiàn),所有的前端開發(fā)工程師都會(huì)遇到類似的功能組件開發(fā)需求,這篇文章主要給大家介紹了關(guān)于Vue實(shí)現(xiàn)右鍵菜單組件的超詳細(xì)教程,文中介紹的方法支持快捷鍵,需要的朋友可以參考下2024-02-02詳解使用vue-cli腳手架初始化Vue項(xiàng)目下的項(xiàng)目結(jié)構(gòu)
這篇文章主要介紹了詳解使用vue-cli腳手架初始化Vue項(xiàng)目下的項(xiàng)目結(jié)構(gòu),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-03-03使用vuetify實(shí)現(xiàn)全局v-alert消息通知的方法
使用強(qiáng)大的Vuetify開發(fā)前端頁(yè)面,結(jié)果發(fā)現(xiàn)官方?jīng)]有提供簡(jiǎn)便的全局消息通知組件,所以自己動(dòng)手寫了一個(gè)簡(jiǎn)單的組件,接下來(lái)通過(guò)本文給大家介紹使用vuetify實(shí)現(xiàn)全局v-alert消息通知的詳細(xì)代碼,感興趣的朋友跟隨小編一起看看吧2024-02-02vue各種事件監(jiān)聽(tīng)實(shí)例(小結(jié))
這篇文章主要介紹了vue各種事件監(jiān)聽(tīng)實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-06-06vue3如何監(jiān)聽(tīng)頁(yè)面的滾動(dòng)
這篇文章主要給大家介紹了關(guān)于vue3如何監(jiān)聽(tīng)頁(yè)面的滾動(dòng)的相關(guān)資料,在vue中實(shí)現(xiàn)滾動(dòng)監(jiān)聽(tīng)和原生js無(wú)太大差異,文中通過(guò)圖文介紹的非常詳細(xì),需要的朋友可以參考下2023-07-07