Vue项目按需加载(项目记录)
为什么需要懒加载?vue这种单页面应用,如果没有应用懒加载,运用webpack打包后的文件将会异常的大,造成进入首页时需要加载的内容过多,时间过长,会长时间的白屏,即使做了loading也是不利于用户体验,而运用懒加载则可以将页面进行划分,需要的时候加载页面,可以有效的分担首页所承担的加载压力,减少首页加载用时。
1.懒加载(Vue异步组件技术)
// 路由{ path: \'/home\', name: \'home\', component: resolve => require([\'@/components/Home\'],resolve) }
// 组件
components: {
historyTab:resolve => {
require([\'../../component/historyTab/historyTab.vue\'],resolve)
},
},
2.webpack的require.ensure技术
{ path: \'/list\', name: \'List\', component: resolve => require.ensure([], () => resolve(require(\'../components/List\')), \'chunkName\') }//多个路由指定相同的chunkName,会合并打包成一个js文件
3.es6的import
// 下面2行代码,没有指定webpackChunkName,每个组件打包成一个js文件const Demo1 = () => import(\'@/components/Demo1\')
const Demo2 = () => import(\'@/components/Demo2\')
// 下面2行代码,指定了相同的webpackChunkName,会合并打包成一个js文件。
// const Demo1 = () => import(/* webpackChunkName: \'Demo1\' */ \'../components/Demo1\')
// const Demo2 = () => import(/* webpackChunkName: \'Demo1\' */ \'../components/Demo2\')
export default new Router({
routes: [
{
path: \'/demo1\',
name: \'Demo1\',
component: Demo1
},
{
path: \'/demo2\',
name: \'Demo2\',
component: Demo2
}
]
})
以上是 Vue项目按需加载(项目记录) 的全部内容, 来源链接: utcz.com/z/378614.html