生命周期
<body> <!-- 生命周期: 1.又名:生命周期回调函数,生命周期函数 2.vue在关键时刻帮我们调用的一些特殊名称的函数 3.生命周期函数的名字不能更改,但函数的具体内容是程序员根据需求编写的 4.生命周期函数中的this指向是vm或组件实例对象 --> <div id="root"> <h2 :style="{opacity} ">欢迎学习vue</h2> </div> </body> <script> Vue.config.productionTip = false new Vue({ el:'#root', data:{ opacity:1 }, methods:{ change(){ setInterval(()=>{ this.opacity -= 0.01 if (this.opacity <= 0) this.opacity =1 },16) } }, //vue完成模板解析并把真实的dom元素放入页面后(挂载完毕)调用mounted mounted(){ setInterval(()=>{ this.opacity -= 0.01 if (this.opacity <= 0) this.opacity =1 },16) } }) //外部定时器(不推荐) // setInterval(()=>{ // vm.opacity -= 0.01 // if (vm.opacity <= 0) vm.opacity =1 // // },16) </script>
案例2
<div id="root"> <h2 :style="{opacity} ">欢迎学习vue</h2> <button @click="stop"> 点我n停止变换</button> </div> </body> <script> Vue.config.productionTip = false new Vue({ el:'#root', data:{ opacity:1 }, methods:{ stop(){ // clearInterval(this.timer) this.$destroy() } }, mounted(){ this.timer = setInterval(()=>{ this.opacity -= 0.01 if (this.opacity <= 0) this.opacity =1 },16) }, beforeDestroy(){ clearInterval(this.timer) } }) </script>
总结
<!-- 常用的生命周期钩子: 1.mounted:发送ajax请求,启动定时器,绑定自定义事件,订阅消息等初始化操作 2.beforeDestroy:清除定时器,解绑自定义事件,取消订阅消息等收尾工作 关于销毁vue实例: 1.销毁后借助vue开发者工具看不到任何信息 2.销毁后自定义事件会失效,但原生dom事件依然有效 3.一般不会在beforeDestroy操作数据,因为即使操作数据,也不会再触发更新流程 -->
标签:opacity,el,生命周期,false,0.01,day70,Vue From: https://www.cnblogs.com/GUGUZIZI/p/17105587.html