vue2源码-十一、Vue的生命周期
Vue的生命周期
钩子函数是如何实现?
内部利用一个发布订阅模式,将用户写的钩子维护成一个数组,后续依次调用
hooks
。主要靠的是mergerOptions
方法有哪些?
引用自https://vue3js.cn/interview/vue/lifecycle.html#%E4%BA%8C%E3%80%81%E7%94%9F%E5%91%BD%E5%91%A8%E6%9C%9F%E6%9C%89%E5%93%AA%E4%BA%9B
详细说明:
beforeCreate
方法:没有实现响应式数据(没有用)created
方法:拿到的是响应式属性(不涉及DOM渲染),这个api
可以在服务端渲染中使用,在vue3
中为setup
。(常用)
- 完成了数据观测,属性与方法的运算,
watcher
、event
事件回调的配置- 可调用
methods
中的方法,访问和修改data数据触发响应式渲染dom
,可通过computed
和watch
完成数据计算- 此时
vm.$el
并没有被创建beforeMount
方法:没有实际价值。此阶段vm.el
虽已完成DOM初始化,但并未挂载在el
选项上mounted
方法:mounted 中可以获取el`。(常用) beforeUpdate
方法:若在beforeUpdate
中再次修改数据,不会再次触发更新方法。(没用)updated
方法:若在updated
中再次修改数据,会再次触发更新方法(beforeUpdate
、updated
)(没用)beforeDestory
方法:手动移除会触发(常用)destroyed
方法:销毁后触发(常用)一般最多是在
mounted
(created
不是比mounted
早?代码是同步执行的,请求是异步的) 服务端渲染不都是在created
中 在哪里发请求主要看做什么事情。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!