vue的created和mounted区别

在Vue.js中,created和mounted的核心区别在于调用时机和DOM可访问性‌:created钩子在组件实例创建后、DOM挂载前调用,适用于数据初始化;mounted钩子在DOM挂载后调用,支持DOM操作。‌‌

‌调用时机与核心能力对比‌

‌created钩子‌。

触发时机:组件实例已创建完成,数据观测(data)、计算属性(computed)、方法(methods)等已初始化,但模板尚未编译,‌DOM元素($el)未生成‌。‌‌

典型用途:初始化非DOM相关数据(如API请求)、设置定时器或事件监听等。‌‌

‌mounted钩子‌。

触发时机:组件模板已渲染为真实DOM节点,‌可通过 e l 或 el或 el或refs操作DOM‌。‌‌

典型用途:初始化依赖DOM的第三方库(如图表、地图)、动态修改DOM结构、访问子组件等。‌‌

‌可访问属性对比‌

功能 created mounted

访问data数据 ✅ ✅

操作DOM ❌ ✅

使用$refs引用元素 ❌ ✅

$el属性可用性 ❌ ✅

‌使用场景建议‌

‌优先使用created的场景‌:

初始化数据(如通过API获取初始列表)。‌‌

设置非DOM交互的逻辑(如定时任务、全局事件总线监听)。‌‌

‌必须使用mounted的场景‌:

需要操作DOM元素(如调整元素尺寸、绑定滚动事件)。‌‌

初始化依赖DOM的插件(如ECharts图表渲染)。‌‌

相关推荐
kyriewen41 分钟前
Skills 榜前 10 我全装了:只有 3 个能直接用
前端·javascript·程序员
工控丫丫1 小时前
帆软看板中经常使用的公式函数及经常搭的组合
前端·javascript·数据库
Dream-Y.ocean4 小时前
鸿蒙PC平台星图遥感适配实战:基于 Electron 壳方案的纯 JavaScript 遥感图像处理引擎开发
javascript·electron·harmonyos
螺丝钉tina4 小时前
[Playwright ][16]Playwright + TypeScript API 自动化测试实战:API测试
前端·javascript·typescript
Highcharts.js7 小时前
React 中原生支持使用 JSX 组件配置自定义表格 Highcharts Grid
前端·javascript·react.js·前端框架·jsx·highcharts·自定义表格
Java后端的Ai之路7 小时前
【AIAgent开发】-Agent工具封装成CLI(纯干货!!!)
java·javascript·人工智能·agent·cli
薛定谔的猫-菜鸟程序员7 小时前
Electron开发超详细教程(从入门到放弃)
前端·javascript·electron
小郎君6588 小时前
Vue 多标签页的加载态设计:为什么我没有用 Suspense 实现 PageLoading
vue.js·算法
htzyl2068 小时前
前端阶梯——第四十三章、实战二:待办清单To-Do
前端·javascript·html