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>
相关推荐
王王碎冰冰17 小时前
基于 Vue3@3.5+跟Ant Design of Vue 的二次封装的 Form跟搜索Table
前端·vue.js
天蓝色的鱼鱼18 小时前
Element UI 2.X 主题定制完整指南:解决官方工具失效的实战方案
前端·vue.js
我是日安18 小时前
从零到一打造 Vue3 响应式系统 Day 8 - Effect:深入剖析嵌套 effect
前端·vue.js
DevUI团队19 小时前
🚀 MateChat V1.8.0 震撼发布!对话卡片可视化升级,对话体验全面进化~
前端·vue.js·人工智能
好好好明天会更好19 小时前
pinia从定义到运用
前端·vue.js
代码小学僧19 小时前
Vite 项目最简单方法解决部署后 Failed to fetch dynamically imported Error问题
前端·vue.js·vite
东坡白菜20 小时前
SSE 实现 AI 对话中的流式输出
javascript·vue.js
猩兵哥哥1 天前
前端面向对象设计原则运用 - 策略模式
前端·javascript·vue.js
EMT1 天前
在 Vue 项目中使用 URL Query 保存和恢复搜索条件
javascript·vue.js
我是日安1 天前
从零到一打造 Vue3 响应式系统 Day 9 - Effect:调度器实现与应用
前端·vue.js