Vue-Router 的懒加载如何实现

非懒加载:

javascript 复制代码
import List from '@/components/list.vue'
const router = new VueRouter({
  routes: [
    { path: '/list', component: List }
  ]
})

(1)方案一(常用):使用箭头函数+import动态加载

javascript 复制代码
const List = () => import('@/components/list.vue')
const router = new VueRouter({
  routes: [
    { path: '/list', component: List }
  ]
})

(2)方案二:使用箭头函数+require动态加载

javascript 复制代码
const router = new Router({
  routes: [
   {
     path: '/list',
     component: resolve => require(['@/components/list'], resolve)
   }
  ]
})

(3)方案三:使用webpack的require.ensure技术,也可以实现按需加载。 这种情况下,多个路由指定相同的chunkName,会合并打包成一个js文件。

javascript 复制代码
// r就是resolve
const List = r => require.ensure([], () => r(require('@/components/list')), 'list');
// 路由也是正常的写法  这种是官方推荐的写的 按模块划分懒加载 
const router = new Router({
  routes: [
  {
    path: '/list',
    component: List,
    name: 'list'
  }
 ]
}))
相关推荐
玖笙&8 分钟前
✨万字解析解析:Vue.js优雅封装级联选择器组件(附源码)
前端·javascript·vue.js·前端框架
烟袅10 分钟前
深入理解 React 中 useState 与 useEffect
前端·javascript·react.js
行走的陀螺仪18 分钟前
前端基建从0到1搭建步骤清单(含工具选型+配置要点+落地注意事项)
前端·javascript·typescript·设计规范·前端工程化·规范化·前端基建
BD_Marathon21 分钟前
会话管理_Session
javascript
小白阿龙23 分钟前
脚手架启动失败(Vue CLI/Vite/Create React App)
前端·vue.js·react.js
鞋尖的灰尘26 分钟前
sdkman安装使用
前端
Aniugel33 分钟前
Vue国际化实现多语言方案
前端·vue.js·面试
帅帅哥的兜兜39 分钟前
猪齿鱼 table表单编辑
前端
白兰地空瓶39 分钟前
你以为树只是画图?不——它是算法面试的“隐形主角”
前端·javascript·算法