veeValidate的使用

這是Vue的一個(gè)插件采郎。js允許您以一種簡單而強(qiáng)大的方式驗(yàn)證輸入字段夕凝,并顯示錯(cuò)誤。
官方文檔veeValidate

vue表單驗(yàn)證.png

安裝

npm

npm install vee-validate --save

cdn

 <script src="path/to/vue.js"></script>
  <script src="path/to/vee-validate.js"></script>
  <script>
    Vue.use(VeeValidate); // good to go. 
  </script>

或者你可以用ES6

import Vue from 'vue';
import VeeValidate from 'vee-validate';

Vue.use(VeeValidate);

中文的配置

我在網(wǎng)上搜了各種方法均無效
對了,如果cnpm install vee-validate --save沒有出現(xiàn)語言包,可以試試這個(gè)

cnpm install  vee-validate@^2.0.0-rc.26  --save

必須加上版本號(hào)瀑志,這樣才node_modules的文件下有個(gè)veeValidate文件夾,里面有個(gè)dist文件污秆,不帶版本號(hào)出現(xiàn)不了那個(gè)locale文件


語言包.png

我搜尋了幾篇帖子使用vee-validate表單插件是如何設(shè)置中文提示劈猪?這篇是最靠譜的

首先安裝i18n
cnpm install --save vue-i18n
然后在main.js里面引入
import VeeValidate from 'vee-validate';
import {Validator} from 'vee-validate';
import zh_CN from 'vee-validate/dist/locale/zh_CN'  //加載語言包應(yīng)該寫成這個(gè)樣子
import VueI18n from 'vue-i18n';
Vue.use(VueI18n)
const i18n = new VueI18n({
  locale: 'zh_CN',
})
Vue.use(VeeValidate, {
  i18n,
  i18nRootKey: 'validation',
  dictionary: {
    zh_CN
  }
});
在模板里面使用
  <div class="g-form-line">
             <span class="g-form-label">郵箱</span>
             <div class="g-form-input">
                 <input v-validate ="'required|email'" type="text" id="email" name="myEmail" :class="{'input': true, 'is-danger': errors.has('email') }">
             </div>
             <span v-show="errors.has('myEmail')" class="help is-danger">{{ errors.first('myEmail')}}</span>
          </div>

這樣子中文就可以出現(xiàn)了

自定義消息
const dict = {
  messages:{
     required:()=>'這個(gè)是必須的'
  }
}

const validator = new Validator({});
validator.localize('zh_CN',dict);
自定義規(guī)則
Validator.extend('username', {
  getMessage: field => '以字母或者下劃線開頭,可包含字母數(shù)字下劃線',
  validate: value => {
    return  /^[a-zA-Z0-9_-]{4,10}$/.test(value)
  }
});
Validator.extend('phonenumber', {
  getMessage: field => field + '必須是11位手機(jī)號(hào)碼',
  validate: value => {
    return value.length == 11 && /^((13|14|15|17|18)[0-9]{1}\d{8})$/.test(value)
  }
});
Validator.extend('password', {
  getMessage: field => field + '最少6位混狠,包括至少1字母岸霹、特殊字符、數(shù)字',
  validate: value => {
    return  /^.*(?=.{6,})(?=.*\d)(?=.*[A-Za-z])(?=.*[!@#$%^&*? ]).*$/.test(value)
  }
});
在模板中使用
 <div class="g-form-line">
             <span class="g-form-label">用戶名</span>
             <div class="g-form-input">
                 <input v-validate ="'required|username'" type="text" id="email" name="myUsername">
             </div>
             <span v-show="errors.has('myUsername')" class="help is-danger">{{ errors.first('myUsername')}}</span>
        </div>
           <div class="g-form-line">
             <span class="g-form-label">手機(jī)號(hào)碼</span>
             <div class="g-form-input">
                 <input v-validate ="'required|phonenumber'" type="text" id="phonenumber" name="myPnumber">
             </div>
             <span v-show="errors.has('myPnumber')" class="help is-danger">{{ errors.first('myPnumber')}}</span>
          </div>
      
         <div class="g-form-line">
             <span class="g-form-label">郵箱</span>
             <div class="g-form-input">
                 <input v-validate ="'required|email'" type="text" id="email" name="myEmail" :class="{'input': true, 'is-danger': errors.has('email') }">
             </div>
             <span v-show="errors.has('myEmail')" class="help is-danger">{{ errors.first('myEmail')}}</span>
          </div>
           
        <div class="g-form-line">
          <span class="g-form-label">密碼:</span>
          <div class="g-form-input" >
            <input type="password"  v-validate="'required|password|confirmed:pwd_confirm'" id="password" name="myPassWord"  placeholder="請輸入密碼" >
          </div>
          <span v-show="errors.has('myPassWord')" class="help is-danger">{{ errors.first('myPassWord')}}</span>
        </div>
內(nèi)置校驗(yàn)規(guī)則
after{target} - 比target要大的一個(gè)合法日期将饺,格式(DD/MM/YYYY)
alpha - 只包含英文字符
alpha_dash - 可以包含英文、數(shù)字痛黎、下劃線予弧、破折號(hào)
alpha_num - 可以包含英文和數(shù)字
before:{target} - 和after相反
between:{min},{max} - 在min和max之間的數(shù)字
confirmed:{target} - 必須和target一樣
date_between:{min,max} - 日期在min和max之間
date_format:{format} - 合法的format格式化日期
decimal:{decimals?} - 數(shù)字,而且是decimals進(jìn)制
digits:{length} - 長度為length的數(shù)字
dimensions:{width},{height} - 符合寬高規(guī)定的圖片
email - 不解釋
ext:[extensions] - 后綴名
image - 圖片
in:[list] - 包含在數(shù)組list內(nèi)的值
ip - ipv4地址
max:{length} - 最大長度為length的字符
mimes:[list] - 文件類型
min - max相反
not_in - in相反
numeric - 只允許數(shù)字
regex:{pattern} - 值必須符合正則pattern
required - 不解釋
size:{kb} - 文件大小不超過
url:{domain?} - (指定域名的)url

作者:乖乖果效36
鏈接:http://www.reibang.com/p/bd606e194392

更多詳細(xì)內(nèi)置規(guī)則可以點(diǎn)擊這里

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末湖饱,一起剝皮案震驚了整個(gè)濱河市掖蛤,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌井厌,老刑警劉巖蚓庭,帶你破解...
    沈念sama閱讀 212,029評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異仅仆,居然都是意外死亡器赞,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,395評論 3 385
  • 文/潘曉璐 我一進(jìn)店門墓拜,熙熙樓的掌柜王于貴愁眉苦臉地迎上來港柜,“玉大人,你說我怎么就攤上這事∠淖恚” “怎么了爽锥?”我有些...
    開封第一講書人閱讀 157,570評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長畔柔。 經(jīng)常有香客問我氯夷,道長,這世上最難降的妖魔是什么靶擦? 我笑而不...
    開封第一講書人閱讀 56,535評論 1 284
  • 正文 為了忘掉前任腮考,我火速辦了婚禮,結(jié)果婚禮上奢啥,老公的妹妹穿的比我還像新娘秸仙。我一直安慰自己,他們只是感情好桩盲,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,650評論 6 386
  • 文/花漫 我一把揭開白布寂纪。 她就那樣靜靜地躺著,像睡著了一般赌结。 火紅的嫁衣襯著肌膚如雪捞蛋。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,850評論 1 290
  • 那天柬姚,我揣著相機(jī)與錄音拟杉,去河邊找鬼。 笑死量承,一個(gè)胖子當(dāng)著我的面吹牛搬设,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播撕捍,決...
    沈念sama閱讀 39,006評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼拿穴,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了忧风?” 一聲冷哼從身側(cè)響起默色,我...
    開封第一講書人閱讀 37,747評論 0 268
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎狮腿,沒想到半個(gè)月后腿宰,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,207評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡缘厢,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,536評論 2 327
  • 正文 我和宋清朗相戀三年吃度,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片昧绣。...
    茶點(diǎn)故事閱讀 38,683評論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡规肴,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情拖刃,我是刑警寧澤删壮,帶...
    沈念sama閱讀 34,342評論 4 330
  • 正文 年R本政府宣布,位于F島的核電站兑牡,受9級特大地震影響央碟,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜均函,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,964評論 3 315
  • 文/蒙蒙 一亿虽、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧苞也,春花似錦洛勉、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,772評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至殷勘,卻和暖如春此再,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背玲销。 一陣腳步聲響...
    開封第一講書人閱讀 32,004評論 1 266
  • 我被黑心中介騙來泰國打工输拇, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人贤斜。 一個(gè)月前我還...
    沈念sama閱讀 46,401評論 2 360
  • 正文 我出身青樓策吠,卻偏偏與公主長得像,于是被迫代替她去往敵國和親瘩绒。 傳聞我的和親對象是個(gè)殘疾皇子奴曙,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,566評論 2 349

推薦閱讀更多精彩內(nèi)容