2015-02-11 48 views
0

運行一個簡單的服務器:使用requirejs隨着amdefine在node.js中生產未定義錯誤

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:[email protected]:8080/p/a/t/h?query=string#hash")); 
}); 

產生錯誤:

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

但是,如果我刪除行define = require("amdefine")(module);,這一切突然工作正常。由於我想在我的項目中使用amdefine,我該如何解決這個問題?

回答

0

而是改變了全局變量define的,你要在其中創建要在使用它的每個文件同名的私有變量。相反,我曾與上述麻煩的路線,我應該把

if (typeof define !== 'function') { var define = require('amdefine')(module) } 
+0

你能發表一個完整的例子嗎? – linuxdan 2016-04-14 21:24:31

相關問題