vue中router的懒加载

       在使用vue-cli3中的手动创建项目,选择router,那么在项目初始化创建的时候就会将router自动安装到项目中,其中在router目录下的index.js里就配置好了router的相关内容。

import Vue from 'vue'
import VueRouter from 'vue-router'
import Home from '../views/Home.vue'
import Button from "../views/Button";

Vue.use(VueRouter)

  const routes = [
  {
    path: '/',
    name: 'Home',
    component: Home
  },
  {
    path: '/about',
    name: 'About',
    // route level code-splitting
    // this generates a separate chunk (about.[hash].js) for this route
    // which is lazy-loaded when the route is visited.
    component: () => import(/* webpackChunkName: "about" */ '../views/About.vue')
  },
    {
      path: '/button',
      component: Button
    }
]

       大家可以看到路由中所访问的组件一开始都在开头进行导入,之后再在router中进行注册,即使你未访问某一个路由组件,它也是被加载了的。
       这里官方提供了路由懒加载的默认示例——about,在每一个子路由中除了path、name属性外还有一个component。这里使用箭头函数导入了组件。并在上面用英文注释:

路由级代码拆分
这会为此路由生成一个单独的块(about.[hash].js) ,并当访问该路由时会进行懒加载

       这就是vue中router的懒加载,经测试访问此路由时速度确实会慢一些

猜你喜欢

转载自blog.csdn.net/weixin_42822484/article/details/106582553