browserify/requirejs模块和ES6模块有什么区别
What is the difference between browserify/requirejs modules and ES6 modules
我还是ES6和模块加载程序的新手,目前我正在考虑将浏览设置与ES6相结合。我想知道,如果我使用ES6模块,我是否仍然需要browserify/requirejs。似乎两者都允许您定义模块并导出它们?browserify/requirejs模块和ES6模块之间有什么区别?
玩了一段时间后,我确实对事情有了更好的理解,也感谢@Andy的Addy Osmani博客。
有不同的模块系统:AMD(RequireJS)、CommonJS(Node)和新的ES6模块语法(当然还有旧的ES5 Global系统)。
但是,如果你想在浏览器中使用这些模块,你仍然需要加载这些模块,并将其与一些模块加载器库连接起来,因为浏览器仍然不支持这一点。为此,您可以使用模块加载器,如RequireJS、Browserify、SystemJS或es6模块加载器。
SystemJS是我个人的最爱,因为它允许你加载任何模块系统(AMD、CommonJS、ES6),甚至可以在一个应用程序中互换使用它们。
更新:与此同时,Webpack已经可用,也应该被视为模块加载程序。
相关文章:
- JSDoc:模块和名称空间之间的关系是什么
- 在角度路由模块中使用“解析”有什么好处
- require('file_path')后面的后缀(模块)在javascript文件中是什么意思
- webpack所说的XX隐藏模块是什么意思
- js中的模块和php中的类之间有什么区别
- browserify/requirejs模块和ES6模块有什么区别
- 什么's Node.js'集群模块和Learnboost's群集模块
- 负载角度依赖关系之间的区别是什么,共享模块的最佳方式是什么
- 节点模块和常规javascript文件之间的区别是什么
- 使用node.js模块,在什么情况下模块会被执行两次
- 有没有什么好的节点模块可以连接google shortener API来缩短长URL
- JavaScript 模块模式和它的替代方案有什么区别
- node.js模块是什么
- nodejs 中模块中的全局对象是什么
- 使用 ES6 模块而不是显示模块模式的额外优势是什么?
- node.js中的请求和http模块有什么区别
- 当未定义默认导出时,从“模块”导入模块是什么,为什么它与将 * 导入为模块不同
- Node.js:在模块作用域中使用“this”运算符的上下文是什么
- 什么被认为是在节点模块中共享“全局”变量的好方法
- 我们将 npm 安装的节点模块放在 Meteor 项目中的什么位置