【Vue-Router】路由懒加载的几种方式

路由懒加载

  • 非懒加载
  • [require 异步加载 '@/components/home'](#require 异步加载 ‘@/components/home’)
  • [import 引入,动态加载](#import 引入,动态加载)
  • [webpack chunkName](#webpack chunkName)

非懒加载

js 复制代码
import Home form './home.vue';

// ...
{
	name: 'Home',
	path: '/home',
	component: Home
}

require 异步加载 '@/components/home'

js 复制代码
{
	name: 'Home',
	path: '/home',
	component: resolve => require(['@/components/home'], resolve)
}

import 引入,动态加载

js 复制代码
{
	name: 'Home',
	path: '/home',
	component: () => import('@/pages/Home/index.vue')
}

webpack chunkName

标明相同的 webpackChunkName 的路由将会被合并打包进同一 JS 文件

js 复制代码
const Home = () => import( /* webpackChunkName: 'demo' */ , '@/pages/Home/index.vue')
const Login = () => import( /* webpackChunkName: 'demo' */ , '@/pages/Login/index.vue')

{
	name: 'Home',
	path: '/home',
	component: Home
},
{
	name: 'Login',
	path: '/login',
	component: Login
}
相关推荐
用户40993225021218 分钟前
Vue 3 静态与动态 Props 如何传递?TypeScript 类型约束有何必要?
前端·vue.js·后端
程序员库里19 分钟前
TipTap简介
前端·javascript·面试
关中老四19 分钟前
【js/web甘特图插件MZGantt】如何使用外部弹框添加和修改任务(updRows方法使用说明)
前端·javascript·甘特图·甘特图插件
兆子龙21 分钟前
Vite 打包优化实战:从 12.17M 到 7.95M 的瘦身之旅
javascript
nunumaymax27 分钟前
css实现元素和文字从右向左排列
前端·css
confiself38 分钟前
A2UI实时渲染展示
开发语言·javascript·css
旷世奇才李先生44 分钟前
043校园二手交易平台系统-springboot+vue
java·vue.js·spring boot
yatum_20141 小时前
CentOS 7 集群 SSH 免密与主机名配置文档
linux·前端·网络
014-code1 小时前
Vue 生命周期完全指南
前端·javascript·vue.js