require 是 CommonJs
的语法,是动态加载,在运行时加载模块里的所有方法。require 导出是值的拷贝,引入的是的是整个模块里面的对象。
import 是 ES6
的语法标准,是静态加载,编译的时候调用,不管在哪里引用都会提升到代码顶部。import 导出的是值的引用,可以按需引入模块里面的对象。
总结
组件懒加载,即在需要的时候,加载该异步组件。路由懒加载,即在路由激活时,加载该路由配置下相应的异步组件。CommonJs
规范的 require
可以实现组件和路由的懒加载,ES6
语法标准的 import
也可以实现。
组件和路由的懒加载,一般用于首屏优化,不立刻请求资源,待首屏加载完毕或者按需响应时再加载资源。可以减少首屏加载用时,减少用户等待时长,提升用户体验。