什么javascript模块api duojs使用?

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

我试图了解如何编写我的js,所以它适用于duojs,但我不确定它使用什么样的体系结构模块定义。 我已经在文档中find它,但在那里找不到它。 从我可以告诉它看起来像duojs编译器包装commonjs样式包装中的所有组件:

看看这个编译后的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风格的模块定义,但我不知道,它也可能是节点。

Duo使用duo-pack来构build它的javascript。 duo-pack的javascript打包器与browserify的浏览器包非常相似。 duo-pack不同之处在于它也支持包装CSS。

它的打包方式是在脚本被包含的情况下立即执行入口文件。

据我了解,从我发现,它不使用另一个API结构。 查看https://github.com/duojs/duo/blob/master/docs/api.md了解如何使用DuoJS API。

在我看来,它看起来完全是从头开始构build的,但我不是任何forms的JavaScript的专家。