首页 > 其他分享 >day70-生命周期

day70-生命周期

时间:2023-02-09 16:00:52浏览次数:31  
标签:opacity el 生命周期 false 0.01 day70 Vue

生命周期

 <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

相关文章