Wang's blog Wang's blog
首页
  • 前端文章

    • HTML教程
    • CSS
    • JavaScript
  • 前端框架

    • Vue
    • React
    • VuePress
    • Electron
  • 后端技术

    • Npm
    • Node
    • TypeScript
  • 编程规范

    • 规范
  • 我的笔记
  • Git
  • GitHub
  • VSCode
  • Mac工具
  • 数据库
  • Google
  • 服务器
  • Python爬虫
  • 前端教程
更多
收藏
关于
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

Wang Mings

跟随大神,成为大神!
首页
  • 前端文章

    • HTML教程
    • CSS
    • JavaScript
  • 前端框架

    • Vue
    • React
    • VuePress
    • Electron
  • 后端技术

    • Npm
    • Node
    • TypeScript
  • 编程规范

    • 规范
  • 我的笔记
  • Git
  • GitHub
  • VSCode
  • Mac工具
  • 数据库
  • Google
  • 服务器
  • Python爬虫
  • 前端教程
更多
收藏
关于
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • Python爬虫

  • 前端教程

    • 团队规范

      • 前端团队规范总结
      • AI前端CSS规范
      • AI前端Git规范
      • AI前端JS规范
      • AI前端Vue规范
      • AI前端工程工具链
      • AI JavaScript 风格指南
      • 推荐-200错误统一处理
      • 推荐-优雅引用字体
      • 推荐-Vue实例选项顺序
      • 组件设计风格
      • 推荐-Vue项目目录结构
      • 推荐-Vue-Router写法
      • Project

      • JS

      • NodeJS

      • Vue

      • React

      • 效率工具

      • 读书笔记

    • 教程
    • 前端教程
    • 团队规范
    wangmings
    2022-07-19
    目录

    推荐-Vue-Router写法

    # # 推荐-Vue-Router写法

    使用路由懒加载,实现方式是结合Vue异步组件和Webpack代码分割功能。

    优点:

    • 减小包体积,提高加载速度
    • 当页面>20个时,组件定义需要拉到编辑器顶部才知道具体路径

    # # bad

        import IntentionList from '@/pages/intention/list'
        import Variable from '@/pages/variable'
        ...
        
        {
            path: '/intention/list',
            name: 'ilist',
            component: IntentionList
        },
        {
            path: '/variable',
            name: 'variable',
            component: Variable
        }
        
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15

    # # good

        {
            path: '/intention/list',
            name: 'ilist',
            component: () => import('@/pages/intention/list')
        },
        {
            path: '/variable',
            name: 'variable',
            component: () => import('@/pages/variable')
        }
        
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11

    import语法需要Babel添加syntax-dynamic-import插件。最新当vue-cli 3.0中默认添加该特性,不需要额外引用。另外,合理控制异步模块的数量。

    编辑 (opens new window)
    推荐-Vue项目目录结构
    Axios用法与原理

    ← 推荐-Vue项目目录结构 Axios用法与原理→

    最近更新
    01
    theme-vdoing-blog博客静态编译问题
    09-16
    02
    搜索引擎
    07-19
    03
    友情链接
    07-19
    更多文章>
    Theme by Vdoing | Copyright © 2019-2022 Evan Xu | MIT License
    • 跟随系统
    • 浅色模式
    • 深色模式
    • 阅读模式