This time I will show you how to use VeeValidate to perform form verification in the vue project. What are the precautions? The following is a practical case. Let’s take a look.
What is VeeValidate:
VeeValidate is a verification library for Vue.js. It has manyThis article contains VeeValidate including the following applications:
1. Basic installation and use 2. Localization support 3. Custom rules and error messages 4. Validation of HTML5 input and custom Vue components 5. Unified submit button processingTake a look at the page effect first:
If you want to see the gif effect, you can go to my github (Basic installation and use
Usage of VeeValidate Two methods are supported: one is: NPM/yarn (npm install vee-validate --save), the other is: CDN. This article is quoted in the form of CDN:
请填写您要荐购的书籍信息:
书 名:
{{ errors.first('title') }}
作 者:
{{ errors.first('author') }}
出版社:
{{ errors.first('publisher') }}
出版年:
{{ errors.first('pubYear') }}
语言类型:
{{ errors.first('type') }}
ISBN号:
{{ errors.first('isbn') }}
推荐理由:
{{ errors.first('remark') }}
提交
v-validate in the input/textarea tag , data-vv-as, nameattribute. (v-model is a two-way binding here to facilitate passing these parameters to the interface request, so I won’t introduce too much) 2.v-show="errors.has('remark')" in the error message tagand **{{ errors.first('remark') }}**
v-validate:
v-validate directive is added to the Validate the input and make sure your input has the name attribute used to generate the error message. The directive is then passed a rulesstringcontaining a list of validation rules separated by a pipe '|'. For example, for thePublication Yearcopy verification above, userequiredThis option is required,pubYearto indicate that the field must be in the year format (of course here is customized), digits: 4, the number length is 4. To combine these two rules, we specify the value of the v-validate expression with the string value required|pubYear|digits:4.
data-vv-as:
When any error message is generated for this input, it will use that data-vv-as value instead of the actual field name , the default error prompts are all in English. If you set this, the error prompt field name will prompt data-vv-as valuev-show="errors.has('remark')
The default error prompt label is not loadederrors.first('remark')
Get the first information about the current remark js part:VeeValidate.Validator.localize('zh_CN'); Vue.use(VeeValidate);
VeeValidate.Validator.localize({ zh_CN: { messages: { required: function (name) { return name + '不能为空' }, } } })
VeeValidate.Validator.extend('isbn',{ getMessage: function () { return " 请输入正确格式的isbn号" }, validate: function (value) { return /^[\d-]*$/.test(value);} }) VeeValidate.Validator.extend('pubYear', { getMessage: function () { return " 请输入正确的年份" }, validate: function (value) { return /^(19|20)\d{2}$/.test(value); } })
validateBeforeSubmit() { this.$validator.validateAll().then((result) => { if (result) { //这里写具体的接口请求 alert("推荐成功!") return; } alert("请输入完整推荐信息!") } }
注释:上代码创建一个提交按钮事件,监听是否正常填写选项,实现校验
一个完整的校验应用案例到这里已经讲解的差不多了,小伙伴们可以根据自己的实际情况应用在自己的项目中,如果需要深入了解,可以移步到官网https://baianat.github.io/vee-validate/guide/。
相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!
推荐阅读:
The above is the detailed content of How to use VeeValidate to perform form verification function in vue project. For more information, please follow other related articles on the PHP Chinese website!