欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

vueformcheck表單驗(yàn)證的實(shí)現(xiàn)代碼

vue-form-check  (基于vue的表單驗(yàn)證)具體實(shí)現(xiàn)代碼如下所述:

創(chuàng)新互聯(lián)建站專注于網(wǎng)站制作、成都做網(wǎng)站、網(wǎng)頁設(shè)計(jì)、網(wǎng)站制作、網(wǎng)站開發(fā)。公司秉持“客戶至上,用心服務(wù)”的宗旨,從客戶的利益和觀點(diǎn)出發(fā),讓客戶在網(wǎng)絡(luò)營銷中找到自己的駐足之地。尊重和關(guān)懷每一位客戶,用嚴(yán)謹(jǐn)?shù)膽B(tài)度對待客戶,用專業(yè)的服務(wù)創(chuàng)造價(jià)值,成為客戶值得信賴的朋友,為客戶解除后顧之憂。

安裝

// 安裝
npm i vue-form-check -S

引用

// 引用(eg. 在工程的main.js下)
import vueFormCheck from 'vue-form-check'
Vue.use(vueFormCheck)

調(diào)用

this.$checkForm(current, config)
@params
current 是當(dāng)前校驗(yàn)對象
config 是校驗(yàn)規(guī)則對象
config.alias   別名
config.type   配置項(xiàng)數(shù)據(jù)類型
config.required 是否必填
config.rule   正則校驗(yàn)
config.depend  先決條件(省事可以在callback里直接判斷,推薦寫,true校驗(yàn)本項(xiàng);false不校驗(yàn)本項(xiàng))
config.callback 靈活校驗(yàn)(rule同時(shí)出現(xiàn),只處理callback,參數(shù)是當(dāng)前值,true校驗(yàn)通過;false校驗(yàn)不通過)
@return object 對象
不通過的話  {alias: '電話', type: 'rule'}  alias是配置的別名,type可以是['type'|'required'|'rule']
校驗(yàn)通過的話 {} 空對象
ps. 驗(yàn)證表單可以寫在mixin里,這里簡單處理直接寫在組件里了

Component

// 使用例子
new Vue({
 data() {
  return {
   params: {
    id: '1234',
    person: {
      name: 'jackie',
      age: '27',
      phone: '18266666666',
      home: ['羅湖區(qū)田心村']
    }
   }
  }
 },
 methods: {
  submit() {
   //...
   console.log('submit success');
  },
  check() {
   let obj = this.$checkForm(this.params, {
      id: {
       alias: 'id',
       type: 'string'
      },
      // 必填校驗(yàn)
      'person.name': {
        alias: '學(xué)校',
        type: 'string',
        required: true
      },
      // 正則校驗(yàn)
      'person.phone': {
        alias: '電話',
        type: 'string',
        rule: /^1[345678][0-9]{9}$/
      },
      // 靈活校驗(yàn),如數(shù)值、日期區(qū)間驗(yàn)證
      'person.age': {
        alias: '年齡',
        callback(value) {
          if (value < 30 && value > 18) {
            return true;
          }
          return false;
        }
      },
      // 先決校驗(yàn),如果電話等于以下,校驗(yàn)地址信息
      'person.home': {
        alias: '方向',
        type: 'array',
        required: true,
        depend() {
          if (this.params.person.phone === '18210517463') {
           return true;
          }
          return false;
        }
     }
    });
    const length = Object.keys(obj).length;
    if (length === 0) {
      return this.submit();
    }
    switch (obj.type) {
      case 'type':
        this.$alert(`${obj.alias}的類型定義錯(cuò)誤`, '提示');
        break;
      case 'required':
        this.$alert(`${obj.alias}是必填項(xiàng)`, '提示');
        break;
      case 'rule':
        this.$alert(`${obj.alias}的輸入不符合規(guī)范`, '提示');
        break;
      default:
        break;
    }
  }
 }
});

補(bǔ)充:vue-form表單驗(yàn)證是否為空值

重點(diǎn)部分:

點(diǎn)擊表單的 submit按鈕 觸發(fā)form 部分 @submit=”submit”事件:

submit事件 定義在js部分:

prevent:文檔上說了在事件后面加上 .prevent就可以阻止默認(rèn)事件了。

form @submit.prevent=”submit”
 <form @submit.prevent="submit">
    <input type="text" v-model="userName" placeholder="請輸入你的姓名" class="name-style" maxlength="20"/>
    <div class="sex">
      <select v-model="selectedSex">
        <option>boy</option>
        <option selected = "selected">girl</option>
      </select>
    </div> 
      <input type="text" v-model="phoneNumber" placeholder="請輸入你的手機(jī)號" class="phone-number-style"/>
    <div class="guide-style">
      <select v-model="selectedGuild">
        <option selected="selected" value="">請選擇一個(gè)導(dǎo)購: </option>
        <option v-for="guild in guilds" value ="{{ guild.name }}">{{ guild.name }}</option>
      </select>
    </div>
    <input type="submit" value ="注冊" class="register-style"/>
  </form> 

  data () {
    return {
    userName: '',  //請輸入你的姓名
    selectedSex: '',//選擇性別
    phoneNumber: '',//請輸入你的手機(jī)號
    guilds: [],   
    selectedGuild: '' ///請選擇一個(gè)導(dǎo)購
    }
  },
  methods: {

 //1.重點(diǎn)是這個(gè)方法 submit () {} - form @submit.prevent="submit" -重點(diǎn)是這個(gè)方法 submit () {},
 //2.可以在這里向服務(wù)器發(fā)送數(shù)據(jù)
   submit () {

    if (!this.userName) {
      showToast('請輸入姓名!')
      return false
    }

    if (!this.phoneNumber) {
      showToast('請輸入手機(jī)號碼!')
      return false
    }

    if (!checkTel(this.phoneNumber)) {
      showToast('手機(jī)號格式不正確')
      return false
    }

    if (!this.selectedGuild) {
      showToast('請選擇導(dǎo)購!')
      return false
    }

    return true
    }
  }

總結(jié)

以上所述是小編給大家介紹的vue form check 表單驗(yàn)證的實(shí)現(xiàn)代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對創(chuàng)新互聯(lián)網(wǎng)站的支持!

分享標(biāo)題:vueformcheck表單驗(yàn)證的實(shí)現(xiàn)代碼
網(wǎng)頁鏈接:http://chinadenli.net/article28/gsjecp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營銷推廣商城網(wǎng)站營銷型網(wǎng)站建設(shè)做網(wǎng)站ChatGPT域名注冊

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站網(wǎng)頁設(shè)計(jì)