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

Best way of including commonjs modules in a project using requirejs

我使用 requirejs to manage the javascript files in my project. However, there are some external libraries I want to use that do not adhere to the AMD format. A library I want to include is barba.js. How would this be done using the package loading feature 的 requirejs?理想情况下,我想包含一个没有 运行 转换工具的 commonjs 模块。

来自 requireJS 文档。

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

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

Barba 不使用 CommonJS 模块格式。

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

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

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