实现路由懒加载的方式有哪些?

1函数式懒加载

使用vue的异步组件和webpack的代码分割功能,通过()=>import()这种函数形式来定义路由组件,示例如下:

复制代码
const Home = () => import('@/views/Home.vue');
const router = new VueRouter({
  routes: [
    { path: '/', component: Home }
  ]
});

2箭头函数结合require

这种方式是利用webpack的代码分割特性,使用箭头函数和require语句来实现懒加载,任意:

复制代码
const Home = resolve => require(['@/views/Home.vue'], resolve);
const router = new VueRouter({
  routes: [
    { path: '/', component: Home }
  ]
});

3命名chunk

通过给import()函数传递一个webpackChunkName注释,可以为懒加载的代码快指定一个名称方便webpack打包后的文件中进行识别和管理,示例如下:

复制代码
const Home = () => import(/* webpackChunkName: "home" */ '@/views/Home.vue');
const router = new VueRouter({
  routes: [
    { path: '/', component: Home }
  ]
});
相关推荐
武器大师722 分钟前
lv_binding_js 代码解读
开发语言·javascript·ecmascript
kyriewen10 分钟前
CSS Container Queries:彻底告别 @media 写到手软,附 5 个真实布局案例
前端·css·面试
Patrick_Wilson1 小时前
router.replace 之后紧跟 reload,页面为什么无限刷新?
javascript·react.js·浏览器
小小小小宇2 小时前
OpenMemory MCP
前端
和平宇宙2 小时前
AI笔记005. hermes-DeepSeek V4 Pro, 128K上下文引发的探索
前端·人工智能·笔记
IT_陈寒2 小时前
Redis持久化这个坑,我爬了一整天才出来
前端·人工智能·后端
naildingding3 小时前
3-ts接口 Interface
前端·typescript
mONESY3 小时前
JavaScript 栈、队列、数组与链表核心知识点总结
javascript·面试
小小前端仔LC3 小时前
Node.js + LangChain + React:搭建个人知识库(六)- “吃什么”项目实战:从700+菜谱入库到Taro H5端JSON渲染
前端·后端
ZengLiangYi3 小时前
TypeScript 项目配置:tsconfig、ESM、路径别名
javascript·typescript·aigc