这两种加杏仁和不加杏仁有什么区别?
require('module');
require(['module']);
编辑
嵌套:
define(function() { require('module'); }
define(function() { require(['module']); }
前者给出了一个 requirejs 错误(建议使用梯子)。
我问的原因是,
我正在研究 example-libglobal如何构建可用作 AMD 模块的库。
我们要导出的库模块:
File: principium.js
/**
* The main module that defines the public interface for principium,
*/
define(function (require) {
convert = require('principium/convert');
//Return the module value.
return {
convert: convert
};
});
返回库模块的主模块。
File: lib/main.js
define(function() {
//Use almond's special top-level, synchronous require to
//get the final module value, and export it as the public
//value.
return require('principium');
});
在这个例子中,它使用杏仁来要求principium
(return
require('principium')
),我希望它返回导出的库对象。
但我不使用杏仁,require('principium')
语法会出错,如果我使用require(['principium'])
它,则不会返回导出的库对象。
导出的库对象,即我的意思是return { convert: convert };
在principium.js
.
编辑
我怎样才能正确使用嵌套要求,以便:
var moduleExport = require('module');
按我的预期工作。
编辑
我解决了它,但我不知道它是如何工作的,我在构建中加入了杏仁,它神奇地工作。
"include": ["../bower_components/almond/almond", "lib/main"]
并重构
File: lib/main.js
define([], function() {
return require('principium');
});