0

我正在尝试在使用 jQuery 的代码上使用 r.js。但是在评估 jQuery 时它失败了。

这是我收到的错误消息:

$ r.js init-edx-machine.js /usr/local/lib/node_modules/requirejs/bin/r.js:393 抛出错误;^

错误:将 ./lib/jquery.js 评估为模块“jquery”失败并出现错误:TypeError: Cannot read property 'createElement' of undefined at Function.req.load (/usr/local/lib/node_modules/requirejs/bin/r .js:2571:23) 在 Object.load (/usr/local/lib/node_modules/requirejs/bin/r.js:1935:21) 在 Module.load (/usr/local/lib/node_modules/requirejs/bin /r.js:1084:29) 在 Module.fetch (/usr/local/lib/node_modules/requirejs/bin/r.js:1074:66) 在 Module.check (/usr/local/lib/node_modules/requirejs /bin/r.js:1106:30) 在 Module.enable (/usr/local/lib/node_modules/requirejs/bin/r.js:1426:22) 在 Object.enable (/usr/local/lib/node_modules /requirejs/bin/r.js:1807:39)在模块。(/usr/local/lib/node_modules/requirejs/bin/r.js:1411:33)在 /usr/local/lib/node_modules/requirejs/bin/r.js:384:

我在 jquery.js 中搜索了“createElement”。大多数时候它使用文档。有时它使用通过参数给出的变量。

jQuery 版本是 2.1.4。我检查了较新的版本,他们也这样做。

我真的不知道这里发生了什么。我现在能做什么?

4

1 回答 1

1

在没有选项的情况下使用r.js将使它想要执行您的代码,这就是这里发生的事情。您可能会出错,因为默认情况下 Node.js 中没有document全局可用(与浏览器相反),因此代码失败。

要执行优化,您需要传递-o参数:r.js -o ...

于 2017-03-29T10:44:51.453 回答