vue.js 2和vue.js 3的生命周期与对应的钩子函数区别

options api

以下表格对应options api

|-----|-------------------------------------------------|---------------------------------------------------------------------------------|
| | vue.js 2 | vue.js 3 |
| 创建时 | beforeCreate created | setup() 代替了beforeCreate和created beforeCreate created |
| 挂载时 | beforeMount mounted 网咯请求放到这里 | beforeMount mounted 网咯请求放到这里 |
| 更新时 | beforeUpdate updated | beforeUpdate updated |
| 卸载时 | beforeDestroy 卸载之前,把消耗性能的处理都处理掉,例如定时器 destroyed | beforeUnmount(beforeDestroy的替代) 卸载之前,把消耗性能的处理都处理掉,例如定时器 unmounted(destroyed的替代) |

vue.js 2生命周期链接

https://v2.cn.vuejs.org/v2/guide/instance.html#%E7%94%9F%E5%91%BD%E5%91%A8%E6%9C%9F%E5%9B%BE%E7%A4%BA

vue.js 3生命周期链接

https://cn.vuejs.org/guide/essentials/lifecycle

composition api

以下是 vue.js 3中新增的

onMounted
组件挂载完成时

onUpdated
组件更新完成时

onUnmounted
组件卸载完成时

必须在 setup()函数中同步调用,不能在 setup 外部使用,也不能在异步回调中调用。为了简化使用,直接在script标签中指定setup即可,如下代码

复制代码
<script setup>
import { ref, onMounted } from 'vue'
const count = ref(0)

function increment() {
  count.value++
}

onMounted(() => {
  console.log('mounted')
})
</script>

vue.js 3中options api和composition api的区别

|-----|-------------------------------------------------|-----------------------------------------------------|
| | options api | composition api |
| 创建时 | beforeCreate created | setup() 代替了beforeCreate和created |
| 挂载时 | beforeMount mounted 网咯请求放到这里 | onBeforeMount onMounted 网咯请求放到这里 |
| 更新时 | beforeUpdate updated | onBeforeUpdate onUpdated |
| 卸载时 | beforeUnmount 卸载之前,把消耗性能的处理都处理掉,例如定时器 unmounted | onBeforeUnmount 卸载之前,把消耗性能的处理都处理掉,例如定时器 onUnmounted |

相关推荐
开开心心就好8 分钟前
竖式除法出题工具,整除余数混合模式
运维·服务器·前端·javascript·ocr·perl·1024程序员节
起个名字费劲死了16 分钟前
Halcon学习一:骰子识别
前端·python·学习
大江东去浪淘尽千古风流人物21 分钟前
【HexVIO】DSP卸载双目惯性VIO:Hexagon向量化前端与单帧融合调度深度解析
前端·状态模式·slam·dsp·vio·hexagon·移动端加速
এ慕ོ冬℘゜23 分钟前
JS 事件循环、宏任务微任务:单线程底层原理 + 执行顺序
开发语言·javascript·ecmascript
其实防守也摸鱼25 分钟前
Chrome 扩展安全攻防实录:从攻击面到防御实践
开发语言·前端·网络·chrome·安全·web安全·php
web打印社区29 分钟前
Lodop排障总纲-常见报错一张表
开发语言·前端·javascript·chrome·websocket
李剑一43 分钟前
为什么几乎所有的知名开源项目都是外国人写的?
前端·ai编程·deepseek
小郎君65843 分钟前
(一)为什么表单需要第三种状态:disabled、readonly 与纯文本展示
前端·vue.js
计算机魔术师1 小时前
1.4万亿没人接,OpenAI自己砍了1500亿
前端
程序员大阳1 小时前
副队长JavaScript教程(56)-DOM之表单操作
javascript·dom·表单操作