使用requirejs在项目中包含commonjs模块的最佳方法

时间:2017-08-10 11:24:12

标签: javascript requirejs amd commonjs umd

我使用requirejs来管理项目中的javascript文件。但是,我想使用的一些外部库不符合AMD格式。我想要包含的库是barba.js。如何使用package loading feature requirejs完成这项工作?理想情况下,我想在不运行转换工具的情况下包含commonjs模块。

2 个答案:

答案 0 :(得分:1)

Barba不使用CommonJS模块格式。

Barba使用UMD (Universal Module Definition)模块格式。这意味着它兼容两者 AMD模块加载(由RequireJS使用)和CommonJS模块加载(由Node.js使用)。

因此,这意味着您可以像使用RequireJS一样包含Barba(或UMD格式的任何其他模块),就像包含AMD模块一样:

define([
  "barba/barba"
], function(Barba) {
  Barba.Pjax.start(); // You can use Barba here
});

答案 1 :(得分:0)

来自requireJS doc。

define(function(require, exports, module) {
    //Put traditional CommonJS module content here
});

这应该会让一切顺利。我真的不确定是否需要它。