Vue(定时器)解决mounted不能获取到data中的数据问题


Posted in Javascript onJuly 30, 2020

vue中data定义

data() {
  return {
  isok:10,
}
}

在vue中使用定时器 如下 mounted是钩子函数

mounted(){
 
 console.log(this.isok)  //能获取isok 10
 setInterval(function(){
 console.log(this.isok) //不能获取 isok
}, 3000);
 
}

这是为什么呢?

原因就是:定时器的this是指向 window的。

那有什么方法来解决这个问题呢?答案是有的,两种

第一种:

用箭头函数:箭头函数中的this指向是固定不变(定义函数时的指向),在vue中指向vue;

mounted(){
 setInterval(()=>{ consolog.log(this.isok) }, 3000);
 }

第二种:

使用 var that = this ,就可以正常调用了。

mounted(){
  var that=this;
  setInterval(()=>{
  console.log(that.isok)
  }, 3000);
 }

补充知识:vue 根据指定字段排序使用computed 方法

我就废话不多说了,大家还是直接看代码吧~

<div id="app">
   <ul>
    <li v-for="(stu,index) in students1">{{stu}}</li>
   </ul>
  </div>
  <script type="text/javascript">
   new Vue({
    el:"#app",
    data:{
     students:[
      {name:"小a",age:20},
      {name:"小b",age:21},
      {name:"小c",age:18},
      {name:"小d",age:19},
      {name:"小f",age:18}
     ]
    },
    computed:{
     students1:function(){
      return sortKey(this.students,'age')
     }
    }
   })
   function sortKey(array,key){
    return array.sort(function(a,b){
     var x = a[key];
     var y = b[key];
     return ((x<y)?-1:(x>y)?1:0)
    })
   }
  </script>

以上这篇Vue(定时器)解决mounted不能获取到data中的数据问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JScript中的undefined和&quot;undefined&quot;的区别
Mar 08 Javascript
javascript之解决IE下不渲染的bug
Jun 29 Javascript
多种方法实现load加载完成后把图片一次性显示出来
Feb 19 Javascript
JS继承用法实例分析
Feb 05 Javascript
javascript消除window.close()的提示窗口
May 20 Javascript
jquery+php随机生成红包金额数量代码分享
Aug 27 Javascript
基于JavaScript的操作系统你听说过吗?
Jan 28 Javascript
深入理解jQuery.data() 的实现方式
Nov 30 Javascript
Vue 过渡(动画)transition组件案例详解
Jan 22 Javascript
详谈jQuery unbind 删除绑定事件 / 移除标签方法
Mar 02 Javascript
图文介绍Vue父组件向子组件传值
Feb 17 Javascript
Vue 源码分析之 Observer实现过程
Mar 29 Javascript
vue setInterval 定时器失效的解决方式
Jul 30 #Javascript
vue 解决setTimeOut和setInterval函数无效报错的问题
Jul 30 #Javascript
浅谈vue 组件中的setInterval方法和window的不同
Jul 30 #Javascript
详解JavaScript自定义函数
Jul 29 #Javascript
深入了解JavaScript词法作用域
Jul 29 #Javascript
vue监听dom大小改变案例
Jul 29 #Javascript
VUE实时监听元素距离顶部高度的操作
Jul 29 #Javascript
You might like
php中的观察者模式
2010/03/24 PHP
php结合ajax实现赞、顶、踩功能实例
2014/05/12 PHP
yii2超好用的日期组件和时间组件
2016/05/05 PHP
JavaScript 仿关机效果的图片层
2008/12/26 Javascript
基于jquery的文本框与autocomplete结合使用(asp.net+json)
2012/05/30 Javascript
使用ImageMagick进行图片缩放、合成与裁剪(js+python)
2013/09/16 Javascript
js 鼠标移动显示图片的简单实例
2013/12/25 Javascript
一个jquery实现的不错的多行文字图片滚动效果
2014/09/28 Javascript
PHP和NodeJs开发的应用如何共用Session
2015/04/16 NodeJs
基于JavaScript实现瀑布流布局(二)
2016/01/26 Javascript
js replace(a,b)之替换字符串中所有指定字符的方法
2016/08/17 Javascript
AngularJS 模块化详解及实例代码
2016/09/14 Javascript
JavaScript获取服务器端时间的方法
2016/11/29 Javascript
javascript中BOM基础知识总结
2017/02/14 Javascript
微信小程序 聊天室简单实现
2017/04/19 Javascript
安装Node.js并启动本地服务的操作教程
2018/05/12 Javascript
vue中,在本地缓存中读写数据的方法
2018/09/21 Javascript
微信小程序自定义导航栏实例代码
2019/04/05 Javascript
微信小程序实现传递多个参数与事件处理
2019/08/12 Javascript
JavaScript实现移动端弹窗后禁止滚动
2020/05/25 Javascript
JavaScript中CreateTextFile函数
2020/08/30 Javascript
React倒计时功能实现代码——解耦通用
2020/09/18 Javascript
python有证书的加密解密实现方法
2014/11/19 Python
Python下载懒人图库JavaScript特效
2015/05/28 Python
用 Python 爬了爬自己的微信朋友(实例讲解)
2017/08/25 Python
Python实现基于C/S架构的聊天室功能详解
2018/07/07 Python
Python检测数据类型的方法总结
2019/05/20 Python
python中使用ctypes调用so传参设置遇到的问题及解决方法
2019/06/19 Python
Python中一个for循环循环多个变量的示例
2019/07/16 Python
JAVA及PYTHON质数计算代码对比解析
2020/06/10 Python
Python高并发解决方案实现过程详解
2020/07/31 Python
物流专业大学的自我评价
2014/01/11 职场文书
优秀教师获奖感言
2014/01/31 职场文书
世界文化遗产导游词
2019/08/07 职场文书
用python批量解压带密码的压缩包
2021/05/31 Python
使用Python开发冰球小游戏
2022/04/30 Python