duojs使用什么javascript模块api



我使用的是duojs,这是一种前端Web开发工具,与browserfy或组件没有什么不同。它允许您直接从文件本身导入css和js,而不需要任何外部包清单。

我正在努力理解如何编写我的js,以便它能很好地与duojs配合使用,但不确定它的模块定义使用了什么样的架构。我在文档中找过,但在那里找不到。据我所知,duojs编译器将所有组件封装在commonjs风格的包装器中:

例如,请参阅他们的repo上的这个编译过的js文件(下面是一个片段):

 /**
* Return newest require.
*/
return require;
})({
1: [function(require, module, exports) {
/**
* Module Dependencies
*/
var Highlight = require('segmentio/highlight');
/**
* Code highlighting.
*/
new Highlight()
.use(require('segmentio/highlight-javascript'))
.use(require('segmentio/highlight-xml'))
.use(require('segmentio/highlight-css'))
.use(require('segmentio/highlight-json'))
.all();

有人能从代码中看出这里使用的是什么类型的js模块api吗?对我来说,这看起来像是一个commonjs风格的模块定义,但我不确定,它可能也是node。

Duo使用Duo-pack构建其javascript。duo-pack的javascript打包程序与browserfy的浏览器包非常相似。duo-pack的不同之处在于它还支持打包CSS。

它的打包方式是,当包含脚本时,入口文件将立即执行。

据我所知,根据我的发现,它没有使用另一个API结构。退房https://github.com/duojs/duo/blob/master/docs/api.md获取有关如何使用DuoJS API的信息。

在我看来,它似乎完全是从头开始构建的,但我不是任何形式的JavaScript的专家。

最新更新