美文网首页
vue路由懒加载、组件异步加载

vue路由懒加载、组件异步加载

作者: 前端大镖客_ | 来源:发表于2020-08-19 09:36 被阅读0次

vue项目实现按需加载的3种方式:vue异步组件、es提案的import()、webpack的require.ensure()

1. vue异步组件技术
vue-router配置路由,使用vue的异步组件技术,可以实现按需加载。
但是,这种情况下一个组件生成一个js文件。
举例如下:

        {
            path: '/promisedemo',
            name: 'PromiseDemo',
            component: resolve => require(['../components/PromiseDemo'], resolve)
        }
2. es提案的import()
推荐使用这种方式(需要webpack > 2.4)
webpack官方文档:webpack中使用import()
vue官方文档:路由懒加载(使用import())

vue-router配置路由,代码如下:
// 下面2行代码,没有指定webpackChunkName,每个组件打包成一个js文件。
const ImportFuncDemo1 = () => import('../components/ImportFuncDemo1')
const ImportFuncDemo2 = () => import('../components/ImportFuncDemo2')
// 下面2行代码,指定了相同的webpackChunkName,会合并打包成一个js文件。
// const ImportFuncDemo = () => import(/* webpackChunkName: 'ImportFuncDemo' */ '../components/ImportFuncDemo')
// const ImportFuncDemo2 = () => import(/* webpackChunkName: 'ImportFuncDemo' */ '../components/ImportFuncDemo2')
export default new Router({
    routes: [
        {
            path: '/importfuncdemo1',
            name: 'ImportFuncDemo1',
            component: ImportFuncDemo1
        },
        {
            path: '/importfuncdemo2',
            name: 'ImportFuncDemo2',
            component: ImportFuncDemo2
        }
    ]
})
3. webpack提供的require.ensure()
vue-router配置路由,使用webpack的require.ensure技术,也可以实现按需加载。
这种情况下,多个路由指定相同的chunkName,会合并打包成一个js文件。
举例如下:

        {
            path: '/promisedemo',
            name: 'PromiseDemo',
            component: resolve => require.ensure([], () => resolve(require('../components/PromiseDemo')), 'demo')
        },
        {
            path: '/hello',
            name: 'Hello',
            // component: Hello
            component: resolve => require.ensure([], () => resolve(require('../components/Hello')), 'demo')
        }
        
        

相关文章

  • vue路由懒加载及组件懒加载

    路由 和 组件 的常用两种懒加载方式:1、vue异步组件实现路由懒加载component:resolve=>(['...

  • vue中组件懒加载

    vue中组件懒加载的方法 1.异步实现路由懒加载 2.import(推荐使用这种方式) 同理,路由懒加载和组件懒加...

  • vue提升性能的几种简单方法

    1.vue异步组件实现懒加载方法如下:component:resolve=>(require([‘需要加载的路由的...

  • component:(resolve) => require是什

    这是异步加载组件,当你访问 / ,才会加载 home.vue。 路由懒加载的一种写法 也可以用import vue...

  • vue路由懒加载和组件懒加载

    vue路由懒加载及组件懒加载 一、为什么要使用路由懒加载 为给客户更好的客户体验,首屏组件加载速度更快一些,解决白...

  • vue路由组件(同步加载换异步加载)

    同步加载组件如图: 由于打包后文件大所以优化路由组件的处理用(路由懒加载)也可以说异步加载如图:

  • Vue路由懒加载

    VUE路由懒加载及组件懒加载一、为什么要使用路由懒加载为给客户更好的客户体验,首屏组件加载速度更快一些,解决白屏问...

  • Vue路由异步组件

    vue异步组件和懒加载可以优化vue的性能 一、 原理 利用webpack对代码进行分割是懒加载的前提,懒加载就是...

  • vue-01

    vue+webpack 优化 一.异步加载 1.异步加载组件,其实就是组件懒加载。可以理解为:当我需要使用组件的时...

  • vue路由懒加载、组件异步加载

    vue项目实现按需加载的3种方式:vue异步组件、es提案的import()、webpack的require.en...

网友评论

      本文标题:vue路由懒加载、组件异步加载

      本文链接:https://www.haomeiwen.com/subject/bacrjktx.html