成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

利用element怎么實(shí)現(xiàn)一個(gè)區(qū)間選擇組件-創(chuàng)新互聯(lián)

本篇文章給大家分享的是有關(guān)利用element怎么實(shí)現(xiàn)一個(gè)區(qū)間選擇組件,小編覺(jué)得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說(shuō),跟著小編一起來(lái)看看吧。

創(chuàng)新互聯(lián)成立于2013年,先為密山等服務(wù)建站,密山等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為密山企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問(wèn)題。

基本的需求如下:

  1. 分為左右值,包含左右值,正整數(shù)

  2. 左側(cè)必須大于等于1,右側(cè)無(wú)限大,右側(cè)值必須不小于左側(cè)

  3. 左側(cè)填寫數(shù)據(jù),右側(cè)標(biāo)為必填;右側(cè)填寫數(shù)據(jù),左側(cè)標(biāo)為必填

  4. 失焦校驗(yàn)成果:

利用element怎么實(shí)現(xiàn)一個(gè)區(qū)間選擇組件

代碼如下:(頁(yè)面)

<el-col :span="8" v-if="item.qttccType === 1"> 
 <el-col :span="14">
  <el-form-item :label="item.qttccName" :prop="'list.'+ index + '.startNum'" :rules="item.qttccName === '交易金額' ? startMoneyRule(tIndex) : []">
   <el-input v-model.number="item.qttcStartNum"  @change="handleMinChange(index)"></el-input>
  </el-form-item>
 </el-col>
 <el-col :span="10">
  <el-form-item label="~" label-width="10px" :prop="'list.'+ index + '.qttcEndNum'" :rules="item.qttccName === '交易金額' ? endMoneyRule(tIndex) : []">
   <el-input v-model.number="item.qttcEndNum"  @change="handleMaxChange(index)"></el-input>
  </el-form-item>
 </el-col>
</el-col>

主要思路:

  • 單個(gè)表單校驗(yàn):左側(cè)填寫數(shù)據(jù),右側(cè)標(biāo)為必填;右側(cè)填寫數(shù)據(jù),左側(cè)標(biāo)為必填、正整數(shù)校驗(yàn)、區(qū)間校驗(yàn)

  • 關(guān)聯(lián)校驗(yàn):右側(cè)閾值不得小于左側(cè)閾值

根據(jù)上面的思路,單個(gè)表單的校驗(yàn)屬于公共校驗(yàn)方法,關(guān)聯(lián)校驗(yàn)需要分別校驗(yàn)(因?yàn)閷?duì)比對(duì)象不同,且提示語(yǔ)不同),由此在自定義校驗(yàn)中有了如下定義:

公共校驗(yàn)方法:正整數(shù)校驗(yàn)、區(qū)間校驗(yàn)

validateCom(rule, value, callback) {
   const MIN_NUMBER = 1
   const one = Number(value)
   if (Number.isInteger(one)) {
    if (one < MIN_NUMBER) {
     return callback(new Error('輸入值必須大于0'))
    } else if (one.length > 50) {
     callback(new Error('較大長(zhǎng)度為50位'))
    }
    return callback()
   }
   return callback(new Error('請(qǐng)輸入數(shù)字值'))
  }

關(guān)聯(lián)校驗(yàn):

startMoneyRule(index) {
   const validateMin = (rule, value, callback) => {
    const one = Number(value)
    const max = Number(this.form.list[index].qttcEndNum)
    if (!max || one < max) {
     return callback()
    }
    return callback(new Error('輸入值不得大于較大閾值'))
   }
   const R = []
   R.push({ required: false, message: '請(qǐng)?zhí)顚懡灰捉痤~最小值', trigger: 'blur' },
    { validator: this.validateCom, trigger: 'blur' },
    { validator: validateMin, trigger: 'blur' })
   return R
  },
  endMoneyRule(index) {
   const validateMax = (rule, value, callback) => {
    const one = Number(value)
    const min = Number(this.form.list[index].qttcStartNum)
    if (!min || one > min) {
     return callback()
    }
    return callback(new Error('輸入值不得小于最小閾值'))
   }
   const R = []
   R.push({ required: false, message: '請(qǐng)?zhí)顚懡灰捉痤~較大值', trigger: 'blur' },
    { validator: this.validateCom, trigger: 'blur' },
    { validator: validateMax, trigger: 'blur' })
   return R
  }

填坑(重點(diǎn))

很顯然,左側(cè)值是小于右側(cè)值的,但是校驗(yàn)提示仍然報(bào)錯(cuò)。究其原因,還是關(guān)聯(lián)校驗(yàn)的問(wèn)題。既然是關(guān)聯(lián)交驗(yàn),改變其中一個(gè)時(shí)應(yīng)該會(huì)重新校驗(yàn)兩個(gè)。很簡(jiǎn)單,在input改變時(shí),重新校驗(yàn)表單不就OK了嗎

handleMinChange(index) {
   this.$refs.form.validateField('list.' + index + '.qttcEndNum')
  },
  handleMaxChange(index) {
   this.$refs.form.validateField('list.' + index + '.qttcStartNum')
  }

以上就是利用element怎么實(shí)現(xiàn)一個(gè)區(qū)間選擇組件,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見到或用到的。希望你能通過(guò)這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

網(wǎng)頁(yè)題目:利用element怎么實(shí)現(xiàn)一個(gè)區(qū)間選擇組件-創(chuàng)新互聯(lián)
文章來(lái)源:http://jinyejixie.com/article42/hgphc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供營(yíng)銷型網(wǎng)站建設(shè)虛擬主機(jī)、面包屑導(dǎo)航建站公司、電子商務(wù)App設(shè)計(jì)

廣告

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

商城網(wǎng)站建設(shè)
高安市| 合水县| 宁都县| 伊通| 遂溪县| 长垣县| 凤山县| 海淀区| 巴彦淖尔市| 本溪| 晋州市| 定西市| 江油市| 灵台县| 富川| 定日县| 毕节市| 乐平市| 闻喜县| 康保县| 轮台县| 象州县| 尚义县| 淄博市| 西藏| 无锡市| 札达县| 黎城县| 建始县| 西昌市| 开鲁县| 齐齐哈尔市| 新巴尔虎右旗| 津南区| 杭锦后旗| 进贤县| 滨海县| 安陆市| 临颍县| 涡阳县| 阳城县|