Vue学习笔记-activated和deactivated生命周期

作用

路由组件所独有的2个生命周期

  • activated 生命周期函数用于在路由组件每次由消失到出现时所调用的函数
  • deactivated 生命周期函数用于路由组件每次由出现到消失时(无论是否缓存)所调用的函数

案例

定义一个NewsVue组件,要求:当该组件出现时,部分字体的透明度周期性变化,当该组件被切换走时,需要被缓存,但需要注销其定时器

  1. 在其父组件中,需要将NewsVue组件设置为缓存
html 复制代码
<keep-alive include="NewsVue">
     <router-view></router-view>
 </keep-alive>
  1. 在NewsVue模板中设置对应的字体透明度并绑定,继而编写相关的生命周期函数
html 复制代码
<template>
  <ul>
    <li :style="{opacity}">欢迎学习Vue</li>
    <li>news001 <input type="text"/> </li>
    <li>news002 <input type="text"/> </li>
    <li>news003 <input type="text"/> </li>
  </ul>
</template>
javascript 复制代码
<script>
export default {
  name: "NewsVue",
  data(){
    return {
      opacity:1,
    }
  },
  activated() {
    //console.log('News组件被激活了')
    this.timer =setInterval(()=>{
      this.opacity-=0.01;
      if(this.opacity <= 0){
        this.opacity = 1;
      }
    },16)
  },
  deactivated() {
    //console.log('News组件失活了')
    clearInterval(this.timer);
  }
}
</script>
相关推荐
白鲸开源1 小时前
Apache SeaTunnel Zeta Engine 的 Basic Auth 是怎么工作的?
java·vue.js·github
卤蛋fg61 小时前
vue 甘特图 vxe-gantt 的使用(四):周视图的渲染
vue.js
卤蛋fg61 小时前
vue 甘特图 vxe-gantt 的使用(三):月视图的渲染
vue.js
卤蛋fg63 小时前
vue 甘特图 vxe-gantt 的使用(一):年视图的渲染
vue.js
前端开发爱好者4 小时前
支持 110 种文件预览!兼容 Vue、React、Svelte!
前端·javascript·vue.js
秋天的一阵风7 小时前
Vue 3 里被严重低估的 API:InjectionKey
前端·javascript·vue.js
徐小夕1 天前
万字拆解 JitWord:企业级实时协同文档底层架构 + 大模型 AI 融合完整实践
前端·vue.js·github
用户83134859306981 天前
Cesium实现雾气效果:按钮一键控制打开/关闭雾气效果,滑块拖动实时控制雾气浓度
vue.js·cesium
锋行天下1 天前
如何用Vite实现Vue组件的按需打包和远程加载
前端·vue.js·前端框架
用户900463370401 天前
用Gemini搞定Vue报错和语法异常的问题
vue.js