vue如何实现手机号码校验功能

  介绍

这篇文章主要介绍vue如何实现手机号码校验功能,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

HTML视图层代码:

 & lt; div  id=癮pp"比;
  & lt;才能input 类型=皌ext",占位符=扒胧淙胧只怕搿?v模型=皏al", @keyup=癱heck"/比;
  & lt;才能div 类=癰ox", v-show=?=该队true"在您输入的手机号码格式正确& lt;/div>
  ,& lt;/div> 

首先我们视图层代码是一个输入框后面加上一个div作为提示信息,HTML代码很简单就不过多讲解了;

JS数据逻辑层代码:

,//这里我们要引入一个文件,文件里面是防抖函数的是实现   & lt; script  src=皌est.js"祝辞& lt;/script>   ,& lt; script>   ,//实例化,vue对象   Vue ({new 才能;   ,,埃尔:“# app"   ,,数据:{//瓦尔是双向数据绑定绑定输入框的值   ,,,val:““,//此处状态值是根据状态值的变化来修改后面div的提示信息   ,,,该队:假的   ,,},   安装才能(){      ,,},   方法:{才能//检查是我们绑定的输入框的@keyup事件,注意这里不能是函数,不然不会触发,必须要是对象   ,才能检查:防反跳(函数(){//这里是我们调用方法,也就是我们要做的事情   ,,,this.handle ();   ,,,console.log (new 日期())   ,,,}),   ,,,处理(){//此处输入是为了统计处理事件触发的次数   ,,,,console.log(“函数防抖”);   ,,,,//这里定义校验规则   ,,,,let  reg =,/^ 1 [3 | 4 | 5 | 7 | 8] [0 - 9] {9} $/;,   ,,,,//校验手机号规则//如果校验不通过会返回假,如果校验通过会返回现实   ,,,,如果(reg.test (this.val)) {//修改状态值方便上面的视图层判断展示   ,,,,,this.statu=true;//动态的修改提示信息   ,,,,,document.getElementsByClassName (“box") .innerHTML=澳淙氲氖只怕敫袷酱砦蟆?   ,,,,其他}{   ,,,,,this.statu=false;   ,,,,,document.getElementsByClassName (“box") .innerHTML=澳淙氲氖只怕敫袷酱砦蟆?   ,,,,}   ,,,},   ,,}   之前,})

测试。js

, function 防反跳(fn),{,//默认300毫秒   var 才能;计时器;   return 才能;函数(),{   ,,如果(定时器),{   ,,,clearTimeout(计时器);   ,,}   ,,timer =, setTimeout((),=祝辞,{   定时器必须要更改这指向,可以用运用,结合,或者上面用变量转换等方式来进行更改这指向      ,,,fn.apply(这);,//,却;能够指向vue   ,,,},1000);   ,,};   以前,}

最后,我们的效果图如下(这里只是简单的模拟效果,视图层搭建的不是很美观):

 vue如何实现手机号码校验功能

我们可以看到我们打印的结果只输出了一次,如果不使用防抖函数,这里是会触发11次的,因为一共输入了11个字符;假设我们的方法体中是发送ajax和操作DOM呢?为了一个手机号码校验,难道我们要进行11次甚至更多次的ajax请求或者DOM操作吗?如果是那样,我们的程序性能可想而知,所以说防抖函数是一种性能提升方案;

上述讲述的是我们之前常见的cdn方式引入vue,那么我们如何在vue-cli脚手架中使用防抖函数来进行提升性能呢?

vue-cli:

首先我们可以在构建文件夹中新建一个js文件,这里我们定义common.js:

常见。js

//,函数防抖   export  function 防反跳(fn,延迟),{   ,//记录上一次的延时器   ,var  timer =,空;   ,var  delay =, delay  | |, 200;   ,return 函数(),{   ,//var  args =,参数;   var 才能;that =,;//才能,清除上一次延时器   clearTimeout才能(计时)   时间=timer 才能;setTimeout(函数(),{   ,,fn.apply (,)   ,,},延迟);   ,}   以前,}

<强>注意:我们在vue-cli中自定义方法必须要出口抛出,不然组件读取不到

然后我们到我们需要用的文件中来进行引入和使用:

需要使用的组件:

import {防反跳},得到“. ./. ./构建/common"

有抛出就一定有引入,我们这里用进口来引用common.js文件里面的方法,这里的防反跳就是我们用来接收常见。js里面方法的变量;

调用方式跟上面的一样:

这里的搜索是视图层绑定的触发事件,注意这里也需要是对象的形式来调用   方法:{   ,搜索:防反跳(函数(){console.log (1234);}, 1000),,   }

vue如何实现手机号码校验功能