2016-08-24 225 views
0

我有以下代碼需要導出基於一些條件模塊,不工作模塊出口模塊

moduleBase.js 
var spawnLinux = require('child-process').spawn; 
var module2 = require('module_2'); 

var isWin = process.platform === 'win32'; 

module.exports = function spawn() { 
    if (isWin) { 
     return module_2; 
    } else { 
     return spawnLinux; 
    } 
}; 

的問題是通過外部模塊使用時module_2將返回錯誤,但如果它使用這個特定內它運行的模塊正常,導出時可能會出現什麼問題?

如果我像這樣使用(不同勢模塊)

var module2 = require('module_2'); 

module2.run(); //this working 

這是行不通的

var module2 = require('moduleBase); 

module2.run();//Here I got error 
+0

替換'module2.run();'用'module2()。run();' – gianlucatursi

回答

1

試試這個

var module2 = require('moduleBase)(); 

module2.run();