我刚刚下载了arian/Mootool并检查了1.5amd分支。我已经设置了一个简单的项目并需要Element模块。出于某种原因,它出现在dom中,但在源代码中未定义。
define(function(require) {
domReady = require('require/domReady');
Element = require('mootools/Element/Element');
domReady(function() {
console.log Element // undefined
});
});
任何想法如何或为何会发生这种情况?
知道我正在使用RequireJS 2.1.4
可能会有所帮助由于
答案 0 :(得分:0)
首先,我认为Arian的mootools-amd
是一个被遗弃的实验,不应该被实际使用。 mootools 2(aka Prime)是用CommonJS编写的,可以用wrapup
转换为AMD包装。
第二,你需要在外部函数运行之前需要东西,否则 - 无法保证元素将在你引用时解析。
这样:
define([
'require/domReady',
'mootools/Element/Element
'], function(domReady, Element){
Element;
});