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 相关文章推荐
JavaScript中关于indexOf的使用方法与问题小结
Aug 05 Javascript
jquery中ajax调用json数据的使用说明
Mar 17 Javascript
js中的this关键字详解
Sep 25 Javascript
js 走马灯简单实例
Nov 21 Javascript
javascript计算用户打开网页的停留时间
Jan 09 Javascript
在JS中如何调用JSP中的变量
Jan 22 Javascript
jQuery 自定义下拉框(DropDown)附源码下载
Jul 22 Javascript
vue2.0.js的多级联动选择器实现方法
Feb 09 Javascript
vue实现页面滚动到底部刷新
Aug 16 Javascript
vue-cli3配置与跨域处理方法
Aug 17 Javascript
jQuery实现全选、反选和不选功能的方法详解
Dec 04 jQuery
vue-cropper插件实现图片截取上传组件封装
May 27 Vue.js
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生成静态页的实现方法
2013/05/10 PHP
php中this关键字用法分析
2016/12/07 PHP
零基础php编程好学吗
2019/10/11 PHP
IE浏览器PNG图片透明效果代码
2008/09/02 Javascript
保证JavaScript和Asp、Php等后端程序间传值编码统一
2009/04/17 Javascript
jQuery ui 1.7更新小结
2009/08/15 Javascript
js中scrollHeight,scrollWidth,scrollLeft,scrolltop等差别介绍
2012/05/16 Javascript
JS 获取浏览器和屏幕宽高等信息的实现思路及代码
2013/07/31 Javascript
js获取select标签的值且兼容IE与firefox
2013/12/30 Javascript
jquery提交form表单时禁止重复提交的方法
2014/02/13 Javascript
理解Javascript图片预加载
2016/02/23 Javascript
jQuery简单实现列表隐藏和显示效果示例
2016/09/12 Javascript
JS实现可编辑的后台管理菜单功能【附demo源码下载】
2016/09/13 Javascript
基于JavaScript实现熔岩灯效果导航菜单
2017/01/04 Javascript
微信小程序 商城开发(ecshop )简单实例
2017/04/07 Javascript
详解Angular调试技巧之报错404(not found)
2018/01/31 Javascript
Angular4 反向代理Details实践
2018/05/30 Javascript
JavaScript原型链与继承操作实例总结
2018/08/24 Javascript
如何提升vue.js中大型数据的性能
2019/06/21 Javascript
详解Angular cli配置过程记录
2019/11/07 Javascript
初学python的操作难点总结(新手必看篇)
2017/08/03 Python
Python+Turtle动态绘制一棵树实例分享
2018/01/16 Python
Python使用xlwt模块操作Excel的方法详解
2018/03/27 Python
PyTorch CNN实战之MNIST手写数字识别示例
2018/05/29 Python
python生成带有表格的图片实例
2019/02/03 Python
Python 循环终止语句的三种方法小结
2019/06/24 Python
python卸载后再次安装遇到的问题解决
2019/07/10 Python
Python多线程及其基本使用方法实例分析
2019/10/29 Python
python实现音乐播放器 python实现花框音乐盒子
2020/02/25 Python
Python数据分析库pandas高级接口dt的使用详解
2020/12/11 Python
HTML5 Canvas 破碎重组的视频特效的示例代码
2019/09/24 HTML / CSS
物业管理专业个人的自我评价
2013/11/19 职场文书
文明旅游倡议书
2015/04/28 职场文书
雷锋电影观后感
2015/06/10 职场文书
2015年物流客服工作总结
2015/07/27 职场文书
天谕手游15杯全调酒配方和调酒券的获得方式
2022/04/06 其他游戏