前记
概述
几种之前的模块加载方案:CommonJS(服务器)和AMD(浏览器)。
ES6的模块加载规范可以完全取代上两者,成为浏览器和服务器通用的模块解决方案。
知己知彼,方能百战不殆。先来看看之前的两种加载方式。
1.CommonJs
概述
每个文件就是一个模块,有自己的作用域。在一个文件里面定义的变量、函数、类,都是私有的,对其他文件不可见。
1 | //test.js 这个文件就是一个module |
在模块内部的话,module这个变量是存在的,表示当前的模块。想将myNamemySex这两个变量共享到其它模块的话,则除了设置window对象上的属性外(不推荐),可以将它们用module.exports
(对外接口)方法输出出去。然后在其它模块中`require(filePath)`引入到其它的模块中。