亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

使用mixins實現elementUI表單全局驗證的解決方法

2019-11-19 11:54:19
字體:
來源:轉載
供稿:網友

使用ElementUi搭建框架的時候,大家應該都有考慮過怎么做全局驗證,畢竟復制粘貼什么的是最煩了,這里分享下個人的解決方法。

驗證規則
分析規則

一般驗證規則,主要是是否必填,不為空,以及參數類型的驗證。

基于這個條件,我們開始找找思路, 單個字段的驗證是這樣的:

name: { required: 是否必填, validator: 自定義規則, message: 失敗提示消息(非自定義時觸發), trigger: 觸發方式}

循環實現

固定的規則。當一個東西固定之后,那必然是可以重復使用的,并且可以快速生成,我們可以用循環來實現它。

但是用循環來實現,我們則需要一個數據規則。

定義數據規則

分析下需要的字段,大概就是以下幾種,其他的可以根據自身的需求去增加:

  • 驗證的字段名 label
  • 驗證的值 value
  • 驗證的類型 type
  • 是否必填 required
  • 自定義規則 rules

那最終我們得到的是這樣一個字段配置列表:

fieldList: [   {label: '賬號', value: 'account', type: 'input', required: true},   {label: '密碼', value: 'password', type: 'password', required: true},   {label: '昵稱', value: 'name', type: 'input', required: true},   {label: '性別', value: 'sex', type: 'select', list: 'sexList', required: true},   {label: '頭像', value: 'avatar', type: 'input'},   {label: '手機號碼', value: 'phone', type: 'input'},   {label: '微信', value: 'wechat', type: 'input'},   {label: 'QQ', value: 'qq', type: 'input'},   {label: '郵箱', value: 'email', type: 'input'},   {label: '狀態', value: 'status', type: 'select', list: 'statusList', required: true}  ]

form完整的字段配置建議參考:

 // 表單相關  formInfo: {  ref: null,  data: {   id: '', // *唯一ID   account: '', // *用戶賬號   password: '', // *用戶密碼   name: '', // *用戶昵稱   type: 2, // *用戶類型: 0: 手機注冊 1: 論壇注冊 2: 管理平臺添加   sex: 0, // *性別: 0:男 1:女   avatar: '', // 頭像   phone: '', // 手機號碼   wechat: '', // 微信   qq: '', // qq   email: '', // 郵箱   status: 1 // *狀態: 0:停用,1:啟用(默認為1)',   // create_user: '', // 創建人   // create_time: '', // 創建時間   // update_user: '', // 修改人   // update_time: '' // 修改時間  },  fieldList: [   {label: '賬號', value: 'account', type: 'input', required: true},   {label: '密碼', value: 'password', type: 'password', required: true},   {label: '昵稱', value: 'name', type: 'input', required: true},   {label: '性別', value: 'sex', type: 'select', list: 'sexList', required: true},   {label: '頭像', value: 'avatar', type: 'input'},   {label: '手機號碼', value: 'phone', type: 'input'},   {label: '微信', value: 'wechat', type: 'input'},   {label: 'QQ', value: 'qq', type: 'input'},   {label: '郵箱', value: 'email', type: 'input'},   {label: '狀態', value: 'status', type: 'select', list: 'statusList', required: true}  ],  rules: {},  labelWidth: '120px'  }

實現驗證方法

  • 循環字段列表,根據type判斷是提示選擇不能為空,還是輸入不能為空
  • 如果字段必填,則根據是否有自定義驗證去生成驗證規則
  • 字段非必填,有自定義規則生成驗證
// 初始化驗證數據 _initRules (formInfo) {  const obj = {},  fieldList = formInfo.fieldList  // 循環字段列表  for (let item of fieldList) {  let type = item.type === 'select' ? '選擇' : '輸入'  if (item.required) {   if (item.rules) {   obj[item.value] = {    required: item.required,    validator: item.rules,    trigger: 'blur'   }   } else {   obj[item.value] = {    required: item.required,    message: '請' + type + item.label,    trigger: 'blur'   }   }  } else if (item.rules) {   obj[item.value] = {   validator: item.rules,   trigger: 'blur'   }  }  }  formInfo.rules = obj }

怎么配置到全局

  • 通過mixin配置,然后在頁面中使用(個人使用的是mixin)
  • 配置為全局方法在頁面中調用
  • 掛在到vue實例上,通過this即可訪問

最后

在項目的系統管理模塊中可以看到示例代碼:

項目地址

項目代碼地址

總結

以上所述是小編給大家介紹的使用mixins實現elementUI表單的全局驗證的解決方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久久久日韩精品久久久男男| 91爱爱小视频k| 久久久欧美精品| 亚洲欧美精品一区| 亚洲影影院av| 亚洲午夜女主播在线直播| 欧美激情视频网站| 日韩中文字幕久久| 成人福利网站在线观看11| 日韩毛片在线看| 在线视频日本亚洲性| 日韩欧美精品中文字幕| 国产做受高潮69| 日韩精品免费在线| 亚洲美女www午夜| 亚洲欧美日韩一区二区在线| 亚洲精品自拍偷拍| 精品一区电影国产| 97国产一区二区精品久久呦| xvideos亚洲人网站| 欧美一性一乱一交一视频| 亚洲国产小视频在线观看| 日韩精品999| 日韩av影院在线观看| xvideos亚洲| 亚洲视频精品在线| 一区二区三区久久精品| 亚洲第一视频在线观看| 九九热视频这里只有精品| 亚洲精品福利资源站| 国外视频精品毛片| 亚洲a在线观看| 久久精品久久精品亚洲人| 中文字幕少妇一区二区三区| 午夜精品久久久久久久99黑人| 亚洲一区二区三区视频| zzijzzij亚洲日本成熟少妇| 精品欧美国产一区二区三区| 国产美女主播一区| 国产精品久久中文| 欧美在线不卡区| 国产欧美日韩中文| 国产精品扒开腿做爽爽爽的视频| 国外成人在线播放| 久久在线免费观看视频| 国产一区欧美二区三区| 亚洲一区国产精品| 秋霞成人午夜鲁丝一区二区三区| 日韩中文字幕视频在线| 日本成人免费在线| 国产精品自产拍在线观看中文| 最近2019年日本中文免费字幕| 最近2019年日本中文免费字幕| 国产精品一区=区| 国产一区二区av| 日韩一区二区欧美| 欧美风情在线观看| 日韩av在线免播放器| 亚洲一区国产精品| 日韩有码在线播放| 超碰日本道色综合久久综合| 欧美电影免费观看| 国产成人极品视频| 亚洲欧美日韩一区二区三区在线| 欧美日韩一区二区精品| 欧美大成色www永久网站婷| 性欧美暴力猛交69hd| 亚洲精品视频在线播放| 欧美日韩亚洲国产一区| 91亚洲精品久久久久久久久久久久| 久久久日本电影| 国产精品高清在线观看| 欧美日本精品在线| 日韩av一区在线| 538国产精品视频一区二区| 国模叶桐国产精品一区| 在线精品国产欧美| 日本精品一区二区三区在线播放视频| 日韩动漫免费观看电视剧高清| 日韩美女视频免费在线观看| 久久综合色影院| 91社区国产高清| 国产一区二区精品丝袜| 亚洲精品国产精品国自产在线| 国产成人福利夜色影视| 日韩国产高清污视频在线观看| 欧美福利小视频| 亚洲第一偷拍网| 国产精品高潮呻吟久久av无限| 欧美性猛交99久久久久99按摩| 亚洲人成在线一二| 日韩在线免费av| 久久久久国产精品免费网站| 亚洲午夜国产成人av电影男同| 欧美老女人性生活| 91精品在线观看视频| 亚洲第一男人av| 久久亚洲私人国产精品va| 91精品国产精品| 亚洲美女喷白浆| 91久久久亚洲精品| 欧美色视频日本版| 国产日韩欧美影视| 26uuu另类亚洲欧美日本一| 国产精品扒开腿做爽爽爽的视频| 欧美精品videofree1080p| 亚洲色图综合网| 亚洲欧美成人精品| 精品视频在线导航| 欧美成人激情视频免费观看| 欧美一级成年大片在线观看| 国产欧美日韩丝袜精品一区| 国产欧美日韩精品丝袜高跟鞋| 欧美日韩成人在线视频| 久久久国产精品亚洲一区| 亚洲无线码在线一区观看| 国产日韩欧美视频在线| 午夜精品一区二区三区在线视频| 亚洲免费电影在线观看| 亚洲欧洲av一区二区| 久久久久久国产免费| 欧美激情精品久久久久久久变态| 亚洲国产成人av在线| 欧美日韩ab片| 日韩中文字幕精品| 日韩综合视频在线观看| 久久99久久99精品免观看粉嫩| 欧美精品videosex牲欧美| 欧美激情视频网址| 色先锋久久影院av| 欧美伦理91i| 亚洲人成在线观看网站高清| 6080yy精品一区二区三区| 欧美激情2020午夜免费观看| 欧美亚洲在线观看| 日韩av中文在线| 国模视频一区二区三区| 日韩电影在线观看中文字幕| 国产97人人超碰caoprom| 午夜精品久久久久久久99黑人| 久久久久久免费精品| 亚洲成人激情视频| 国产精品久久一区主播| 欧美中文字幕视频| 正在播放亚洲1区| 欧美日韩另类字幕中文| 日韩亚洲欧美成人| 国产午夜精品美女视频明星a级| 97国产在线观看| 久久久久国产精品www| 91中文精品字幕在线视频| 成人欧美一区二区三区黑人孕妇| 国产精品美腿一区在线看| 久久99国产精品久久久久久久久| 欧美成人精品影院| 日本中文字幕久久看| 亚洲成人免费在线视频| 亚洲成人亚洲激情| 成人在线视频福利| 国产在线高清精品| 国产精品扒开腿做爽爽爽男男| 亚洲国产精品999| 欧美日韩中国免费专区在线看| 午夜精品久久久久久久久久久久久|