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优缺点分析说明
Apr 10 Javascript
获取客户端电脑日期时间js代码(jquery)
Sep 12 Javascript
图片动画横条广告带上下滚动可自定义图片、链接等等
Oct 20 Javascript
js实现目录定位正文示例
Nov 14 Javascript
Express的HTTP重定向到HTTPS的方法
Jun 06 Javascript
element-ui 设置菜单栏展开的方法
Aug 22 Javascript
vue+iview 实现可编辑表格的示例代码
Oct 31 Javascript
浅析Proxy可以优化vue的数据监听机制问题及实现思路
Nov 29 Javascript
JS多个异步请求 按顺序执行next实现解析
Sep 16 Javascript
详解element-ui级联菜单(城市三级联动菜单)和回显问题
Oct 02 Javascript
ES6 proxy和reflect的使用方法与应用实例分析
Feb 15 Javascript
基于canvas实现手写签名(vue)
May 21 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 字符串操作入门教程
2006/12/06 PHP
Windows PHP5和Apache的安装与配置
2009/06/08 PHP
详谈PHP文件目录基础操作
2014/11/11 PHP
PHP Opcache安装和配置方法介绍
2015/05/28 PHP
php微信公众号开发(3)php实现简单微信文本通讯
2016/12/15 PHP
Yii框架分页实现方法详解
2017/05/20 PHP
js的event详解。
2006/09/06 Javascript
jQuery extend 的简单实例
2013/09/18 Javascript
解析JSON对象与字符串之间的相互转换
2013/12/18 Javascript
jquery防止重复执行动画避免页面混乱
2014/04/22 Javascript
javascript实现禁止复制网页内容
2014/12/16 Javascript
JavaScript实现单击下拉框选择直接跳转页面的方法
2015/07/02 Javascript
AngularJS自定义插件实现网站用户引导功能示例
2016/11/07 Javascript
详解JS获取HTML DOM元素的8种方法
2017/06/17 Javascript
create-react-app修改为多页面支持的方法
2018/05/17 Javascript
vue this.reload 方法 配置
2018/09/12 Javascript
VUE脚手架具体使用方法
2019/05/20 Javascript
微信小程序使用字体图标的方法
2019/05/23 Javascript
VUE UPLOAD 通过ACTION返回上传结果操作
2020/09/07 Javascript
python学习手册中的python多态示例代码
2014/01/21 Python
python解析xml文件操作实例
2014/10/05 Python
python通过定义一个类实例作为ftp回调方法
2015/05/04 Python
Python reduce()函数的用法小结
2017/11/15 Python
python 正确保留多位小数的实例
2018/07/16 Python
Python基于SMTP协议实现发送邮件功能详解
2018/08/14 Python
Python正则表达式指南 推荐
2018/10/09 Python
如何用C代码给Python写扩展库(Cython)
2019/05/17 Python
Python 使用 prettytable 库打印表格美化输出功能
2019/12/26 Python
OpenCV实现机器人对物体进行移动跟随的方法实例
2020/11/09 Python
微软开源最强Python自动化神器Playwright(不用写一行代码)
2021/01/05 Python
swtich是否能作用在byte上,是否能作用在long上,是否能作用在String上
2013/07/06 面试题
青春寄语大全
2014/04/09 职场文书
电子装配专业毕业生求职信
2014/04/23 职场文书
不忘国耻振兴中华演讲稿
2014/05/14 职场文书
使用HTML+Css+transform实现3D导航栏的示例代码
2021/03/31 HTML / CSS
MySQL 逻辑备份 into outfile
2022/05/15 MySQL