有没有工具可以将采用CommonJS/Node模块写的模块(
require
, exports
等)编译成单个.js文件,以便在浏览器中使用?require
, exports
等)编译成单个.js文件,以便在浏览器中使用?您可以在https://github.com/dsheiko/cjsc找到另一个类似的实用程序,分别命名为CommonJS编译器和Grunt任务。
它在解析模块中的require()调用时使用Esprima语法树。它将每个模块封装在唯一的作用域中,并以与nodejs完全相同的方式进行缓存。它可以很好地处理UMD(通用模块定义)模块。我最喜欢的是,在编译过程中只添加了很少的代码 - 每个模块只有一个小的require函数体加上define-call包装器。