browserify / requirejs模块和ES6模块有什么区别? [英] What is the difference between browserify/requirejs modules and ES6 modules

查看:208
本文介绍了browserify / requirejs模块和ES6模块有什么区别?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我仍然是ES6和模块加载程序的新手,我目前正在考虑将browserify设置与ES6相结合。我想知道如果我正在使用ES6模块,是否仍然需要browserify / requirejs。看起来好像都允许你定义模块并导出它们? browserify / requirejs模块和ES6模块有什么区别?

解决方案

玩了一段时间后,我得到了更好的理解的事情,还要感谢@Andy for 由Addy Osmani博客

$有不同的模块系统:AMD(RequireJS),CommonJS(Node)和新ES6模块语法(当然是旧的ES5全球系统)。 / p>

但是,如果要使用浏览器中的那些,您仍然需要使用某些模块加载程序库加载并连接这些模块,因为浏览器仍然不支持。为此,您可以使用模块加载器,如 RequireJS Browserify SystemJS es6-module-loader



SystemJS是我个人最喜爱的,因为它允许您加载任何模块系统(AMD,CommonJS,ES6),甚至可以在1个应用中互换使用。



更新:同时 Webpack 已成为可用,也应该被视为模块加载程序。


I'm still new to ES6 and module loaders and I'm currently looking at combining a browserify setup with ES6. I was wondering if I would still need browserify/requirejs if I'm using ES6 modules. Seems like both allow you to define modules and export them? What is the difference between browserify/requirejs modules and ES6 modules?

解决方案

After playing around for a while I did get a better understanding of things, also thanks to @Andy for the blog by Addy Osmani.

There are different module systems: AMD (RequireJS), CommonJS (Node) and the new ES6 module syntax (and the old ES5 Global system of course).

However if you want to use those in your browser you still need to load and wire those modules with some module loader library because browsers still do not support that. For that you could use a module loader like RequireJS, Browserify, SystemJS or es6-module-loader.

SystemJS is my personal favorite because it allows you to load any module system (AMD, CommonJS, ES6) and even use them interchangably in 1 app.

Update: In the mean time Webpack has become available and should be considered as a module loader as well.

这篇关于browserify / requirejs模块和ES6模块有什么区别?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆