在vue的mounted下使用setInterval的误区
1. vue对象的生命周期
1). 初始化显示(只执行一次)
* beforeCreate()
* created()
* beforeMount()
* mounted()
2). 更新状态(可执行多次)
* beforeUpdate()
* updated()
3). 销毁vue实例: vm.$destory()(只执行一次)
* beforeDestory()
* destoryed()
2. 常用的生命周期方法
created()/mounted(): 发送ajax请求, 启动定时器等异步任务
beforeDestory(): 做收尾工作, 如: 清除定时器
前几天刚开始学vue就碰到了vue里面的坑,在vue生命周期的mounted使用定时器,用了匿名函数作为回调函数,结果没有任何效果,代码入下
<div id="test">
<button>vue的生命周期</button>
<p v-show="isShow">你是佩奇吗</p>
</div> <script type="text/javascript" src="../js/vue.js"></script>
<script>
new Vue({
el:'#test',
data:{
isShow:true
} ,
mounted() {
setInterval(function (){
this.isShow=!this.isShow;
},1000)
}
});
</script>
查阅了一下,发现下面这种写法,存在一个问题,当前this指向的是当前的定时器positionTimer
mounted() {
setInterval(function (){
this.isShow=!this.isShow;
},1000)
}
使用了lambda表达式(箭头函数)替换匿名函数的写法,当前this指向的是外部的vue对象
mounted() {
setInterval(()=>{
this.isShow=!this.isShow;
},1000)
效果显示正常,如有大咖有更通俗的解释,望纠正指教,谢谢

在vue的mounted下使用setInterval的误区的更多相关文章
- vue开发小结(下)
前言 继前几天总结了vue开发小结(上)后,发现还有很多的点没有能列举出来,于是还是打算新建一个下篇,再补充一些vue开发中需要注意的细节,确实还是都是细节的问题,我只是在这里强调下,希望对大家有帮助 ...
- 浅谈Vue不同场景下组件间的数据交流
浅谈Vue不同场景下组件间的数据“交流” Vue的官方文档可以说是很详细了.在我看来,它和react等其他框架文档一样,讲述的方式的更多的是“方法论”,而不是“场景论”,这也就导致了:我们在阅读完 ...
- 【Vue】浅谈Vue不同场景下组件间的数据交流
浅谈Vue不同场景下组件间的数据“交流” Vue的官方文档可以说是很详细了.在我看来,它和react等其他框架文档一样,讲述的方式的更多的是“方法论”,而不是“场景论”,这也就导致了:我们在阅读完 ...
- VUE Node模式下,如何改变菜单的颜色,如何将超长文字缩略显示,在鼠标进入后展开全部显示,鼠标移出则恢复缩略显示
VUE Node模式下,如何改变菜单的颜色,如何将超长文字缩略显示,在鼠标进入后展开全部显示,鼠标移出则恢复缩略显示: “事件”引起变量值的变化,系统引擎自动根据变量值的变化刷新页面 在VUE Nod ...
- vue mint-ui 框架下拉刷新上拉加载组件的使用
安装 npm i mint-ui -S 然后在main.js中引入 import MintUI from 'mint-ui' import 'mint-ui/lib/style.css' Vue.us ...
- 百度地图的初始化应当在vue的mounted()函数里执行
今天使用百度地图出现了一个问题,百度地图初始化后宽.高都是0,但是地图容器宽高都设置好的, 一开始怎么都排除不出问题,后来无语了,把布局直接复制进入百度地图的示例里运行发现没有问题, 所以想到不是百度 ...
- vue 在nginx下页面刷新出现404问题解决和在nginx下页面加载了js但是页面显示空白问题解决
一.vue 在nginx下页面刷新出现404 在网上翻遍了所有这样问题的解决办法,全都是一个解决办法也是正确的解决办法,(后来在vue官网上关于history方式出现404解决方法也是这样说的),只是 ...
- vue & async mounted
vue & async mounted refs xgqfrms 2012-2020 www.cnblogs.com 发布文章使用:只允许注册用户才可以访问!
- Vue实现树形下拉框
Vue自身并没有实现树形下拉框的组件,找了很多资料,最后在Github上找了个插件vue-treeselect,功能还是比较全的,模糊搜索.多选.延迟加载.异步搜索.排序,自定义.Vuex支持等等.这 ...
随机推荐
- ST算法 Sliding Window algorithm template
ST算法(Sliding Window):A easy way to slove the substring problems algorithm template to slove substrin ...
- 检查python标识符是否有效
- POJ-1847 Tram( 最短路 )
题目链接:http://poj.org/problem?id=1847 Description Tram network in Zagreb consists of a number of inter ...
- CF - 1130 E Wrong Answer
PS:换了一种方式 希望大家喜欢 2333 /** code by: zstu wxk time: 2019/03/01 Problem Link: http://codeforces.com/con ...
- 淘淘购物系统 (Python)
#首页def tao_first(): t1 = '欢迎进入淘淘购物'.center(110) print(t1) print('~' * 130) t2 = '注册'.center(20) prin ...
- JXOI 2017 颜色 题解
T3 颜色 100/100 对于这题由于数据范围小,有一种神奇的做法,我们可以把每个值随机赋值,但是保证相同颜色的和为0,就代表消去了这个颜色,我们只要取寻找合法区间就行,合法区间的寻找只要找相同前缀 ...
- 从SpringBoot构建十万博文聊聊Tomcat集群监控
前言 在十万博文终极架构中,我们使用了Tomcat集群,但这并不能保证系统不会出问题,为了保证系统的稳定运行,我们还需要对 Tomcat 进行有效的运维监控手段,不至于问题出现或者许久一段时间才知道. ...
- Map.Entry 接口
Map.Entry Map 接口下面的 Entry 接口. 该接口,定义一个键值对实体接口.Map.entrySet 方法返回的 Set 集合中的实体就是实现这个 它.只有一种方法可以获得 Map.E ...
- 【Offer】[40] 【最小的K个数】
题目描述 思路分析 测试用例 Java代码 代码链接 题目描述 输入n个整数,找出其中最小的k个数.例如,输入4.5.1.6.2.7.3.8这8个数字,则最小的4个数字是1.2.3.4. 牛客网刷题地 ...
- Linux之vim、压缩与解压缩
终有一种方法适合你!