vue中如何在父组件监听子组件的生命周期

一、vue2方式

方法一:大家都知道子组件mounted后父组件的mounted才会执行,可以利用这一点

方法二:通过vue文档并未提及的方式@hook的方式

html 复制代码
<template>
  <div>
    <componentDemo  @hook:mounted="handleMounted" @hook:unmounted = "handleUnMounted"></componentDemo >
  </div>
</template>
 
<script setup>
import { ref } from "vue";
import componentDemo from './components/componentDemo .vue'

function handleUnMounted(){
  console.log('子节点卸载完成');
}
function handleMounted(){
  console.log('子节点挂载完成');
}

</script>
 
<style scoped></style>

二、vue3方式

方法一:大家都知道子组件mounted后父组件的mounted才会执行,可以利用这一点

方法二:通过vue文档并未提及的方式@vue的方式

html 复制代码
<template>
  <div>
    <componentDemo  @vue:mounted="handleMounted" @vue:unmounted = "handleUnMounted"></componentDemo >
  </div>
</template>
 
<script setup>
import { ref } from "vue";
import componentDemo from './components/componentDemo .vue'

function handleUnMounted(){
  console.log('子节点卸载完成');
}
function handleMounted(){
  console.log('子节点挂载完成');
}

</script>
 
<style scoped></style>

By the way

以上@hook和@vue这两种方式为源码里的实现,并且这种方法不仅可以监听自定义组件(子组件)的生命周期,也可以监听虚拟节点的生命周期,比如监听div等等。

相关推荐
余人于RenYu5 小时前
Claude + Figma MCP
前端·ui·ai·figma
杨艺韬8 小时前
vite内核解析-第2章 架构总览
前端·vite
我是伪码农9 小时前
外卖餐具智能推荐
linux·服务器·前端
qq_283720059 小时前
Python Celery + FastAPI + Vue 全栈异步任务实战
vue.js·python·fastapi
2401_885885049 小时前
营销推广短信接口集成:结合营销策略实现的API接口动态变量填充方案
前端·python
小李子呢02119 小时前
前端八股性能优化(2)---回流(重排)和重绘
前端·javascript
程序员buddha9 小时前
深入理解ES6 Promise
前端·ecmascript·es6
吴声子夜歌10 小时前
ES6——Module详解
前端·ecmascript·es6
剪刀石头布啊10 小时前
原生form发起表单干了啥
前端
剪刀石头布啊10 小时前
表单校验场景,如何实现页面滚动到报错位置
前端