Heim > Web-Frontend > View.js > Über Vue mit Validator: VeeValidate3

Über Vue mit Validator: VeeValidate3

藏色散人
Freigeben: 2020-09-19 16:09:57
nach vorne
3603 Leute haben es durchsucht

Über Vue mit Validator: VeeValidate3

Empfohlen: „vue.js Tutorial

Vorwort

Ich verwende vee-validate Version ist 3.3.7<code>vee-validate版本为3.3.7

安装教程

cnpm install vee-validate --save
Nach dem Login kopieren

新建文件vee-validate.js

import { extend, ValidationObserver, ValidationProvider, localize } from 'vee-validate'import { required, email, min, between, numeric } from 'vee-validate/dist/rules'import zh_CN from 'vee-validate/dist/locale/zh_CN.json';localize('zh_cn',zh_CN) // 配置中文export default {
  install (Vue) {
    Vue.component('ValidationObserver', ValidationObserver)
    Vue.component('ValidationProvider', ValidationProvider)
    extend('required', required)
    extend('email', email)
    extend('min', min)
    extend('between', between)
    extend('numeric', numeric)
    extend('phone', {
      message: '请输入11位的手机号码',
      validate: value => value.length === 11 && /^1[3456789]\d{9}$/.test(value)
    })
  }}
Nach dem Login kopieren

main.js 引入 vee-validate.js

import Validate from './vee-validate'Vue.use(Validate)
Nach dem Login kopieren

已经安装完成了

使用教程

新建表单

<template>

 <ValidationObserver ref="form">

 <form @submit.prevent="handleAddAddress">

  <!-- 要验证的输入框 -->
 <ValidationProvider rules="required|phone" v-slot="{ errors }" name="手机号码">
  <input type="text" v-model="phone" />
     {{ errors[0] }} <!-- 错误信息显示 -->
 </ValidationProvider><button type="submit">确认</button>
 </form>

 </ValidationObserver></template>
Nach dem Login kopieren

显示

vue使用验证器: VeeValidate3
vue使用验证器: VeeValidate3

method处理

 methods:{

      async checkValid () { // 是否验证通过
        return this.$refs.form.validate();
      },
      async handleAddAddress(e){
        let check = await this.checkValid();
        if(! check) // 验证不通过
        {
          let errors = Object.values(this.$refs.form.errors);
          let first_error_index = errors.findIndex(val => val.length >= 1);
          alert(errors[first_error_index][0])
        }    
        // 弹出请输入11位的手机号码

        ......
    }
Nach dem Login kopieren

vue使用验证器: VeeValidate3

this.$refs.form.validate()是一个promise,当然你也可以用then
Nach dem Login kopieren

吐槽

2简单多了,我只是想做个简单的验证而已。

3是受到lar启发,个人感觉真蛋疼,超麻烦的。

每个input都要被ValidationProvider包裹才能验证。
(应该把input

Installationsanleitung🎜🎜rrreee🎜🎜🎜Neue Datei vee-validate.js 🎜 🎜rrreee🎜🎜🎜main.js führt vee-validate.js ein🎜🎜rrreee🎜wurde installiert🎜🎜🎜🎜Tutorial🎜🎜🎜🎜🎜Neues Formular🎜🎜rrreee🎜🎜🎜Anzeige🎜 🎜🎜🎜vue verwendet Validator: VeeValidate3🎜🎜 „Methodenverarbeitung“: >🎜rrreee🎜🎜🎜Tucao🎜🎜🎜2 Viel einfacher, ich möchte nur eine einfache Überprüfung durchführen. 🎜🎜3 wurde von lar inspiriert. Ich persönlich finde es wirklich schmerzhaft und mühsam. 🎜🎜Jede Eingabe muss von ValidationProvider umschlossen werden, um überprüft zu werden. 🎜(input sollte in eine benutzerdefinierte Komponente gekapselt werden) 🎜                                                                                                                                                     

Das obige ist der detaillierte Inhalt vonÜber Vue mit Validator: VeeValidate3. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:learnku.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage