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

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 }
  ]
});
相关推荐
GISer_Jing1 小时前
前端性能指标及优化策略——从加载、渲染和交互阶段分别解读详解并以Webpack+Vue项目为例进行解读
前端·javascript·vue
不知几秋1 小时前
数字取证-内存取证(volatility)
java·linux·前端
水银嘻嘻2 小时前
08 web 自动化之 PO 设计模式详解
前端·自动化
Zero1017134 小时前
【详解pnpm、npm、yarn区别】
前端·react.js·前端框架
&白帝&4 小时前
vue右键显示菜单
前端·javascript·vue.js
Wannaer4 小时前
从 Vue3 回望 Vue2:事件总线的前世今生
前端·javascript·vue.js
羽球知道5 小时前
在Spark搭建YARN
前端·javascript·ajax
光影少年5 小时前
vue中,created和mounted两个钩子之间调用时差值受什么影响
前端·javascript·vue.js
青苔猿猿5 小时前
node版本.node版本、npm版本和pnpm版本对应
前端·npm·node.js·pnpm
一只码代码的章鱼6 小时前
Spring的 @Validate注解详细分析
前端·spring boot·算法