最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue form check 表單驗證的實現(xiàn)代碼

 更新時間:2018年12月09日 09:40:55   作者:tomastong  
這篇文章主要介紹了vue form check 表單驗證的實現(xiàn)代碼,代碼簡單易懂,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下

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

安裝

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

引用

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

調用

this.$checkForm(current, config)
@params
current 是當前校驗對象
config 是校驗規(guī)則對象
config.alias   別名
config.type   配置項數(shù)據(jù)類型
config.required 是否必填
config.rule   正則校驗
config.depend  先決條件(省事可以在callback里直接判斷,推薦寫,true校驗本項;false不校驗本項)
config.callback 靈活校驗(rule同時出現(xiàn),只處理callback,參數(shù)是當前值,true校驗通過;false校驗不通過)
@return object 對象
不通過的話  {alias: '電話', type: 'rule'}  alias是配置的別名,type可以是['type'|'required'|'rule']
校驗通過的話 {} 空對象
ps. 驗證表單可以寫在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'
      },
      // 必填校驗
      'person.name': {
        alias: '學校',
        type: 'string',
        required: true
      },
      // 正則校驗
      'person.phone': {
        alias: '電話',
        type: 'string',
        rule: /^1[345678][0-9]{9}$/
      },
      // 靈活校驗,如數(shù)值、日期區(qū)間驗證
      'person.age': {
        alias: '年齡',
        callback(value) {
          if (value < 30 && value > 18) {
            return true;
          }
          return false;
        }
      },
      // 先決校驗,如果電話等于以下,校驗地址信息
      '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}的類型定義錯誤`, '提示');
        break;
      case 'required':
        this.$alert(`${obj.alias}是必填項`, '提示');
        break;
      case 'rule':
        this.$alert(`${obj.alias}的輸入不符合規(guī)范`, '提示');
        break;
      default:
        break;
    }
  }
 }
});

補充:vue-form表單驗證是否為空值

重點部分:

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

submit事件 定義在js部分:

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

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="請輸入你的手機號" class="phone-number-style"/>
    <div class="guide-style">
      <select v-model="selectedGuild">
        <option selected="selected" value="">請選擇一個導購: </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: '',//請輸入你的手機號
    guilds: [],   
    selectedGuild: '' ///請選擇一個導購
    }
  },
  methods: {

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

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

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

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

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

    return true
    }
  }

總結

以上所述是小編給大家介紹的vue form check 表單驗證的實現(xiàn)代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!

相關文章

  • vue2 el-checkbox-group復選框無法選中問題及解決

    vue2 el-checkbox-group復選框無法選中問題及解決

    這篇文章主要介紹了vue2 el-checkbox-group復選框無法選中問題及解決,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-05-05
  • 基于element-UI input等組件寬度修改方式

    基于element-UI input等組件寬度修改方式

    這篇文章主要介紹了基于element-UI input等組件寬度修改方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-03-03
  • Vue實現(xiàn) 點擊顯示再點擊隱藏效果(點擊頁面空白區(qū)域也隱藏效果)

    Vue實現(xiàn) 點擊顯示再點擊隱藏效果(點擊頁面空白區(qū)域也隱藏效果)

    這篇文章主要介紹了Vue實現(xiàn) 點擊顯示 再點擊隱藏 點擊頁面空白區(qū)域也隱藏效果,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-01-01
  • vue實現(xiàn)web滾動條分頁

    vue實現(xiàn)web滾動條分頁

    這篇文章主要為大家詳細介紹了vue實現(xiàn)web滾動條分頁,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-04-04
  • Element-Plus Select組件實現(xiàn)滾動分頁加載功能

    Element-Plus Select組件實現(xiàn)滾動分頁加載功能

    Element-Plus的select組件并沒有自帶滾動分頁加載的功能,其雖然提供了自定義下拉菜單的底部的方式可以自定義上一頁及下一頁操作按鈕的方式進行分頁加載切換,這篇文章主要介紹了Element-Plus Select組件實現(xiàn)滾動分頁加載功能,需要的朋友可以參考下
    2024-03-03
  • 詳解Vue注冊組件的方法

    詳解Vue注冊組件的方法

    Vue注冊組件有這幾種,分別是全局注冊、局部注冊、在模塊系統(tǒng)中注冊,這篇文章主要介紹了Vue注冊組件的方法,需要的朋友可以參考下
    2022-08-08
  • Vue中的v-for列表循環(huán)示例詳解

    Vue中的v-for列表循環(huán)示例詳解

    循環(huán)使用v-for指令,v-for指令需要以site in sites形式的特殊語法,sites是源數(shù)據(jù)數(shù)組并且site是數(shù)組元素迭代的別名,下面這篇文章主要給大家介紹了關于Vue中v-for列表循環(huán)的相關資料,需要的朋友可以參考下
    2022-11-11
  • vue點擊input彈出帶搜索鍵盤并監(jiān)聽該元素的方法

    vue點擊input彈出帶搜索鍵盤并監(jiān)聽該元素的方法

    今天小編就為大家分享一篇vue點擊input彈出帶搜索鍵盤并監(jiān)聽該元素的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-08-08
  • vue實現(xiàn)簡單瀑布流布局

    vue實現(xiàn)簡單瀑布流布局

    這篇文章主要為大家詳細介紹了vue實現(xiàn)簡單瀑布流布局,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • vue實現(xiàn)樹形結構增刪改查的示例代碼

    vue實現(xiàn)樹形結構增刪改查的示例代碼

    其實很多公司都會有類似于用戶權限樹的增刪改查功能,本文主要介紹了vue實現(xiàn)樹形結構增刪改查,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-09-09

最新評論

文昌市| 成武县| 毕节市| 扶风县| 黄平县| 广宗县| 宣武区| 双鸭山市| 寿阳县| 清流县| 连山| 平乡县| 济阳县| 南昌市| 宁海县| 安龙县| 纳雍县| 保靖县| 独山县| 重庆市| 阿克陶县| 霍城县| 博乐市| 安多县| 子长县| 香格里拉县| 巴中市| 长汀县| 炎陵县| 吕梁市| 大竹县| 杨浦区| 龙陵县| 通河县| 图片| 中宁县| 横峰县| 六枝特区| 东阿县| 越西县| 苏尼特右旗|