使用懒加载原因:
像vue这种(spy)单页面应用,如果没有使用到懒加载,webpack打包的文件过大,造成进入首页时,加载的资源过多,时间过长,即使做了loading也不利于用户体验,而运用懒加载可以将页面进行划分,需要的时候加载页面,可以有效的分担首页所承担的加载压力,减少首页加载事件,简单来说就是进入首页不用一次加载过多资源造成时间过长
问题背景(v-cli版本2.96):
路由懒加载在开发阶段的时候,随手改一行代码热更新都是要几千ms,导致等待过长。这里是异步加载导致 webpack 每次的 cache 失效了,所以每次的rebuild 才会这么的慢。
知识点概要:
1.import/export与require/exports 区别
require/exports 是运行时动态加载,import/export 是静态编译。
CommonJS 加载的是一个对象(即 module.exports 属性),该对象只有在脚本运行完才会生成。而 ES6 模块不是对象,它的对外接口只是一种静态定义,在代码静态解析阶段就会生成。- 阮一峰
2.懒加载 require和import()的区别
import()
类似于 Node 的require
方法,区别主要是前者是异步加载,后者是可异步也可同步加载。
ps:require(['xx.js']