vue 解决setTimeOut和setInterval函数无效报错的问题


Posted in Javascript onJuly 30, 2020

1.在vue项目中的js代码语法与之前使用js和jquery还是有所出入的,现遇到一个点击按钮出现倒计时30S的效果

相信大家对着两个函数都陌生,就是一个定时器,setTimeOut只执行一次,而setInterval会重复执行

需要注意的是:在setInterval不用的时候一定要用clearSetInterval关闭定时器。

2.按照最原始的倒计时效果,实现如下:

//获取30s 控制操作倒计时
 time(){
   if(this.timeWait <= 0){
     this.timeWait = 0;
     return;
   }else{

     this.timeWait--;
   }

   setTimeout(function(){
     this.time();
   }, 1000)

 },

此处出现了错误,报错信息为time未定义,此处对于定时器方法其实并没有错

3.原因是 老生常谈的javaScript 的this 的问题。

因为用的一个

function(){

}

这里的 独立的作用域 this指向了全局(这里是window)而且window里没有time这个函数报了错。

4.用过vue的朋友应该,基本vue中都是this.XXX这样写。这里的this是Vue对象。

所以为了使this正确指向vue,我用了ES6的尖头函数。

setTimeout(() => {
  this.time();
}, 1000)

尖头函数因为它的特殊性,它的this指向它外层的对象。

补充知识:Vue使用Element UI,校验不生效

vue中v-model=v-bind+v-on(@)

所以习惯使用v-model

今天使用Element UI 的el-form

发现el-input无论填什么值校验都过不了,百思不解

最后把v-model改为:model解决

然后看了下文档,确实使用的是:model绑定

真是个弱智的问题

vue 解决setTimeOut和setInterval函数无效报错的问题

以上这篇vue 解决setTimeOut和setInterval函数无效报错的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery多行滚动/向左或向上滚动/响应鼠标实现思路及代码
Jan 23 Javascript
CheckBoxList多选样式jquery、C#获取选择项
Sep 06 Javascript
浅谈Javascript中Object与Function对象
Sep 26 Javascript
使用jQuery判断Div是否在可视区域的方法 判断div是否可见
Feb 17 Javascript
Node.js学习入门
Jan 03 Javascript
JS库之wow.js使用方法
Sep 14 Javascript
vue中如何使用ztree
Feb 06 Javascript
vue判断input输入内容全是空格的方法
Mar 02 Javascript
vue绑定事件后获取绑定事件中的this方法
Sep 15 Javascript
JS/HTML5游戏常用算法之碰撞检测 包围盒检测算法详解【圆形情况】
Dec 13 Javascript
Vue学习之常用指令实例详解
Jan 06 Javascript
小程序实现点击tab切换左右滑动
Nov 16 Javascript
浅谈vue 组件中的setInterval方法和window的不同
Jul 30 #Javascript
详解JavaScript自定义函数
Jul 29 #Javascript
深入了解JavaScript词法作用域
Jul 29 #Javascript
vue监听dom大小改变案例
Jul 29 #Javascript
VUE实时监听元素距离顶部高度的操作
Jul 29 #Javascript
详解JavaScript作用域 闭包
Jul 29 #Javascript
Angular+ionic实现折叠展开效果的示例代码
Jul 29 #Javascript
You might like
PHP加速 eAccelerator配置和使用指南
2009/06/05 PHP
PHP中开发XML应用程序之基础篇 添加节点 删除节点 查询节点 查询节
2010/07/09 PHP
php提交表单发送邮件的方法
2015/03/20 PHP
PHP实现websocket通信的方法示例
2018/08/28 PHP
DWZ table的原生分页浅谈
2013/03/01 Javascript
js导航菜单(自写)简单大方
2013/03/28 Javascript
jquery 页面滚动到底部自动加载插件集合
2014/01/31 Javascript
红米手机抢购的js代码
2014/03/10 Javascript
jQuery如何获取同一个类标签的所有值(默认无法获取)
2014/09/25 Javascript
深入理解JavaScript系列(22):S.O.L.I.D五大原则之依赖倒置原则DIP详解
2015/03/05 Javascript
百度地图api如何使用
2015/08/03 Javascript
JavaScript常见的五种数组去重的方式
2016/12/15 Javascript
基于JavaScript实现的快速排序算法分析
2017/04/14 Javascript
vue组件初学_弹射小球(实例讲解)
2017/09/06 Javascript
JS实现移动端整屏滑动的实例代码
2017/11/10 Javascript
关于Vue单页面骨架屏实践记录
2017/12/13 Javascript
Vue实现调节窗口大小时触发事件动态调节更新组件尺寸的方法
2018/09/15 Javascript
基于vue-cli npm run build之后vendor.js文件过大的解决方法
2018/09/27 Javascript
CKEditor 4.4.1 添加代码高亮显示插件功能教程【使用官方推荐Code Snippet插件】
2019/06/14 Javascript
详解vue beforeEach 死循环问题解决方法
2020/02/25 Javascript
webpack 如何同时输出压缩和未压缩的文件的实现步骤
2020/06/05 Javascript
[52:52]完美世界DOTA2联赛PWL S3 LBZS vs access 第一场 12.10
2020/12/13 DOTA
windows下wxPython开发环境安装与配置方法
2014/06/28 Python
Python3控制路由器——使用requests重启极路由.py
2016/05/11 Python
Python3中的json模块使用详解
2018/05/05 Python
Python高级特性与几种函数的讲解
2019/03/08 Python
浅谈pytorch torch.backends.cudnn设置作用
2020/02/20 Python
python使用bs4爬取boss直聘静态页面
2020/10/10 Python
Python random模块的使用示例
2020/10/10 Python
音乐学个人的自荐书范文
2013/11/26 职场文书
好邻里事迹材料
2014/01/16 职场文书
弘扬雷锋精神活动演讲稿
2014/03/04 职场文书
中国梦演讲稿教师篇
2014/04/23 职场文书
微笑面对生活演讲稿
2014/05/13 职场文书
群众路线教育实践活动整改方案(个人版)
2014/10/25 职场文书
先进党支部事迹材料
2014/12/24 职场文书