news 2026/5/27 15:22:54

异步组件核心知识点

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
异步组件核心知识点

文章目录

  • 一、核心概念区分
  • 二、2种组件的注册&使用对比
  • 三、异步组件2种核心回调(基础/高级)
  • 四、路由懒加载(异步组件的路由专属用法)
  • 五、异步组件的缓存规则
  • 六、异步组件底层核心(理解用,项目不用)

一、核心概念区分

  1. 普通组件:注册时直接传入组件对象,项目启动一次性加载所有代码,全局/局部注册后直接渲染,无延迟。
  2. 异步组件:注册时传入异步回调函数,项目启动仅注册组件名,首次用到时才触发回调加载组件代码,实现按需加载,减少首屏体积。

二、2种组件的注册&使用对比

js// 普通组件:直接引入+注册(一次性加载)importMyNormalfrom'./MyNormal.vue'// 全局注册普通组件Vue.component('MyNormal',MyNormal)// 局部注册普通组件exportdefault{components:{MyNormal}}js// 异步组件:定义回调+注册(按需加载)constMyAsync=()=>import('./MyAsync.vue')// 全局注册异步组件Vue.component('MyAsync',MyAsync)// 局部注册异步组件exportdefault{components:{MyAsync}}模板使用:二者完全一致,<MyNormal/><MyAsync/>

三、异步组件2种核心回调(基础/高级)

js// 基础版(项目最常用)constAsyncBasic=()=>import('./MyComponent.vue')// 高级版(带加载/错误兜底)constAsyncAdvance=()=>({component:import('./MyComponent.vue'),loading:()=>import('./Loading.vue'),error:()=>import('./Error.vue'),delay:200,timeout:3000})

四、路由懒加载(异步组件的路由专属用法)

jsconstrouter=newVueRouter({routes:[// 普通路由(一次性加载){path:'/normal',component:import('./MyNormal.vue')},// 路由懒加载(异步组件,按需加载){path:'/async',component:()=>import('./MyAsync.vue')}]})

五、异步组件的缓存规则

  1. 代码缓存:异步组件代码仅加载一次,首次触发回调后永久缓存,再次使用无需重新加载;
  2. 实例缓存:组件实例默认切走销毁,需用 包裹实现实例缓存(普通/异步组件均适用)。
vue<!--缓存组件实例(普通/异步都能用)--><keep-alive><MyAsync v-if="show"/><router-view/><!--路由组件缓存--></keep-alive>

六、异步组件底层核心(理解用,项目不用)

js// resolve由Vue自动传入,加载完成后传递组件配置给VueconstAsyncLow=(resolve)=>{require(['./MyComponent.vue'],resolve)}Vue.component('AsyncLow',AsyncLow)

核心总结

  1. 普通组件一次性加载,异步组件按需加载,核心区别在代码加载时机;
  2. 异步组件全局/局部注册均传异步回调,仅可用范围不同,触发/缓存逻辑一致;
  3. 路由懒加载=异步组件的路由版,底层逻辑完全相同,省略显式组件名注册;
  4. 异步组件默认缓存代码, 缓存实例,二者可配合使用。
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/13 13:32:50

好写作AI:期刊审稿政策对AI辅助写作的接纳度与风险防控

从“全面禁止”到“有条件开放”&#xff1a;期刊政策的转型期当研究者按下论文投稿按钮的瞬间&#xff0c;一个关乎稿件命运的新问题日益凸显&#xff1a;期刊的审稿政策&#xff0c;如何审视文中AI参与的痕迹&#xff1f; 从早期部分期刊的“零容忍”禁令&#xff0c;到如今越…

作者头像 李华
网站建设 2026/5/25 23:00:04

AI元人文构想:悬鉴《论马克思对李嘉图政治经济学的批判与超越》

AI元人文构想&#xff1a;悬鉴《论马克思对李嘉图政治经济学的批判与超越》 ——一份关于数字资本主义的元理论批判 岐金兰 与 DeepSeek 摘要 本文以岐金兰提出的“AI元人文构想”理论体系为分析框架&#xff0c;对《论马克思对李嘉图政治经济学的批判与超越》一文进行系统性悬…

作者头像 李华
网站建设 2026/5/19 18:58:24

收藏!大模型入门不踩坑|程序员/小白转行学习全指南

这两年&#xff0c;大模型彻底打破了实验室的壁垒&#xff0c;从高冷的前沿研究成果&#xff0c;走进了每一位程序员、学生、职场转行者的日常工作、学习聊天框&#xff0c;甚至成为了很多人规划职业方向的核心关键词。 不管是私信还是评论区&#xff0c;几乎每天都能收到这样…

作者头像 李华
网站建设 2026/5/6 20:35:48

无法加载 DLL“XXXXXXX.dll”: 找不到指定的模块

今天遇到一个特别的奇怪的问题&#xff0c;昨天运行好好的程序&#xff0c;今天就不行了&#xff0c;总是报错&#xff1a; 无法加载 DLL“XXXXXXX.dll”: 找不到指定的模块。这个dll是fortran语言写的。 deepseek搜了一下解决方案&#xff0c;包括下载depends22_x64看依赖关系…

作者头像 李华
网站建设 2026/5/19 20:27:23

TreeMap、TreeSet与Collections.sort()排序机制揭秘

文章目录 TreeMap、TreeSet与Collections.sort()排序机制揭秘&#xff1f;一、TreeMap与TreeSet&#xff1a;红黑树的奥秘1.1 TreeMap的工作原理1.2 TreeSet的工作原理1.3 Comparable与Comparator的区别1.4 性能比较 二、Collections.sort()&#xff1a;排序界的瑞士军刀2.1 Co…

作者头像 李华
网站建设 2026/5/15 7:52:33

从九尾狐AI案例看企业AI培训的技术架构与落地实践

第一章&#xff1a;企业AI培训的技术架构设计 现代企业AI培训需要解决的核心问题是&#xff1a;如何将复杂的AI技术转化为可落地的业务解决方案。九尾狐AI的成功实践为我们提供了一个完整的技术架构参考。 class EnterpriseAI_Training:def __init__(self, training_model, i…

作者头像 李华