CommonJS
和ES Module
导出方法以下图: mode
mode
属性因此这里简单认识一下 mode
三者之间的区别:经过选择
development
,production
或none
之中的一个,来设置mode
参数,你能够启用 webpack 内置在相应环境下的优化。其默认值为production
webpack
production
因此打包后的文件是被压缩丑化以后的代码以下图: development
模式打包成功的代码以下: CommonJS
模块化实现原理CommonJS
引入方法而后调用,最后将打包的入口文件改为该文件: ES Module
模块化实现原理ES Module
导出的文件,而且建立一个文件而后使用ES Module
引入,而后打包稿文件,删除对应的注释和格式化后代码以下: CommonJS
加载ES Module
的原理ES Module
原理基本相同,无非在调用方法的时候使用告终构的方式取到方法,而ES Module
是经过对象调用属性的方式调用方法,具体源码以下: ES Module
加载CommonJS
的原理CommonJS
差很少相同,基本上是使用CommonJS
原理去实现,在最后调用的时候不在是使用解构的方式,而是经过属性调用的方式具体源码以下: