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>
相关推荐
锋行天下2 小时前
如何用Vite实现Vue组件的按需打包和远程加载
前端·vue.js·前端框架
用户900463370402 小时前
用Gemini搞定Vue报错和语法异常的问题
vue.js
小兔崽子去哪了5 小时前
Vue3 + Pinia 集成 IGV.js 实现 BAM 文件在线浏览
javascript·vue.js·后端
OpenTiny社区1 天前
🎨 看完 GenUI SDK 源码我悟了!
前端·vue.js·github
mqcode1 天前
你项目里的 axios,封对了吗?从裸用到生产级的四步进化
vue.js·axios
Linsk1 天前
组件 = 模板 + 业务逻辑
java·前端·vue.js
前端啊1 天前
告别 el-table 打印难题,vue3-print-el-table 来了!
前端·vue.js
AprChell1 天前
低代码设计器和低代码设计引擎架构综述
前端·vue.js·低代码
Ruihong1 天前
🎉 VuReact 1.9.0 发布,支持 Vue 3.4 defineModel 编译到 React
vue.js·react.js·面试
英勇无比的消炎药1 天前
TinyRobot 源码深度分析:OpenTiny 的 AI 对话组件库
前端·vue.js·github