0

运行一个简单的服务器:

requirejs = require("requirejs");
if (typeof define !== "function") {
    define = require("amdefine")(module);
}

requirejs.config({
    nodeRequire: require,
    baseUrl: __dirname + "/../.."
});

requirejs([
    "url"
], function (
    url
) {
    console.log(url.parse("http://user:pass@host.com:8080/p/a/t/h?query=string#hash"));
});

产生错误:

TypeError: undefined is not a function at Url.parse (url.js:293:32)

但是,如果我删除 line define = require("amdefine")(module);,一切都会突然正常。由于我想amdefine在我的项目中使用,我该如何解决这个问题?

4

1 回答 1

0

您不想更改全局变量define,而是希望在要使用它的每个文件中创建一个同名的私有变量。而不是我上面遇到的问题,我应该放

if (typeof define !== 'function') { var define = require('amdefine')(module) }
于 2015-02-11T13:51:10.020 回答