vue-router如何实现路由懒加载

1.Vue异步组件(异步加载)

vue-router 配置路由,使用vue的异步组件技术,可以实现懒加载,但是这种情况是一个组件会生成一个js文件。

component:resolve => require([‘需要加载的组件地址’],resolve)


{path:'/login',name:'Login',
    component:resolve => require(['@/components/Login'],resolve)},
{path:'/home',name:'Home',
    component:resolve => require(['@/components/Home'],resolve),
    children:[
        {path:'/new',name:'New',
            component:resolve =>require(['@/components/New'],resolve)},
        {path:'/list',name:'List',
            component:resolve => require(['@/components/List'],resolve)}
    ]
 }

2.推荐方式-ES6的import()

const 组件名 = () => import(‘组件路径’)


//下面没有指定webpackChunkName,每个组件打包成一个js文件
const Foo = () => import('../components/Foo')
const Aoo = () => import('../components/Aoo')

指定相同的webpackChunkName,会合并打包成一个js文件

const Foo = () => import(/*webpackChunkName:'ImportFuncDemo'*/,'../components/Foo');
const Aoo - () => import(/*webpackChunkName:'ImportFuncDemo'*/,'../components/Aoo')
...
{path:'/Foo',name:'Foo',component:Foo},
{path:'/Aoo',name:'Aoo',component:Aoo},
{path:'/Login',name:'Login',
    component: ()=>import(/*webpackChunkName:"ImportFuncDemo"*/,'../compontents/Login')}

上面代码中,webpackChunkName值相同的会打包成一个js文件

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/115261.html<

(0)
运维的头像运维
上一篇2025-02-18 01:21
下一篇 2025-02-18 01:22

相关推荐

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注