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 相关文章推荐
javascript 数组排序函数
Aug 20 Javascript
JavaScript学习笔记之Function对象
Jan 22 Javascript
jQuery实现自动与手动切换的滚动新闻特效代码分享
Aug 27 Javascript
Jquery $when done then的用法详解
May 20 Javascript
老生常谈jquery id选择器和class选择器的区别
Feb 12 Javascript
微信小程序 扎金花简单实例
Feb 21 Javascript
jquery版轮播图效果和extend扩展
Jul 18 jQuery
浅谈Vue服务端渲染框架Nuxt的那些事
Dec 21 Javascript
JS实现商品橱窗特效
Jan 09 Javascript
卸载vue2.0并升级vue_cli3.0的实例讲解
Feb 16 Javascript
js实现简单放大镜效果
Mar 07 Javascript
js实现滚动条自动滚动
Dec 13 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 - Html Transfer Code
2006/10/09 PHP
聊天室php&amp;mysql(一)
2006/10/09 PHP
我的论坛源代码(一)
2006/10/09 PHP
php下删除一篇文章生成的多个静态页面
2010/08/08 PHP
php删除文本文件中重复行的方法
2015/04/28 PHP
载入进度条 效果
2006/07/08 Javascript
添加JavaScript重载函数的辅助方法2
2010/07/04 Javascript
jQuery 1.5最新版本的改进细节分析
2011/01/19 Javascript
JavaScript匿名函数与委托使用示例
2014/07/22 Javascript
JavaScript实现的GBK、UTF8字符串实际长度计算函数
2014/08/27 Javascript
JS实现的通用表单验证插件完整实例
2015/08/20 Javascript
JavaScript统计字符串中每个字符出现次数完整实例
2016/01/28 Javascript
20分钟成功编写bootstrap响应式页面 就这么简单
2016/05/12 Javascript
详解JavaScript节流函数中的Throttle
2016/07/16 Javascript
jQuery flip插件实现的翻牌效果示例【附demo源码下载】
2016/09/20 Javascript
漂亮实用的页面loading(加载)封装代码
2017/02/03 Javascript
Javascript中类式继承和原型式继承的实现方法和区别之处
2017/04/25 Javascript
详解Vue2.0里过滤器容易踩到的坑
2017/06/01 Javascript
了解javascript中的Dom操作
2019/05/27 Javascript
maptalks+three.js+vue webpack实现二维地图上贴三维模型操作
2020/08/10 Javascript
python中wx将图标显示在右下角的脚本代码
2013/03/08 Python
利用python获取Ping结果示例代码
2017/07/06 Python
在Qt中正确的设置窗体的背景图片的几种方法总结
2019/06/19 Python
Python中求对数方法总结
2020/03/10 Python
中国专业的综合网上购物商城:京东
2016/08/02 全球购物
意大利高端时尚买手店:Stefania Mode
2018/03/01 全球购物
英国旅行箱包和行李箱购物网站:Travel Luggage & Cabin Bags
2019/08/26 全球购物
遇到的Mysql的面试题
2014/06/29 面试题
大学生自我鉴定
2013/12/08 职场文书
经销商培训邀请函
2014/01/21 职场文书
新学期标语
2014/06/30 职场文书
2014旅游局领导班子四风问题对照检查材料思想汇报
2014/09/19 职场文书
个人委托书如何写
2014/09/25 职场文书
小学向国旗敬礼活动方案
2014/09/27 职场文书
优胜劣汰,强者为王——读《鲁滨逊漂流记》有感
2019/08/15 职场文书
Linux在两个服务器直接传文件的操作方法
2022/08/05 Servers