我的node.js模塊太大了,所以我將它分成幾個較小的(子)模塊。導出node.js中的所有對象
我複製&粘貼的所有物體都清晰到每個子模塊組成,現在看起來像
var SOME_CONSTANT = 10;
function my_func() { etc... };
現在我想一切都在每個子模塊,大批出口,而不必明確說exports.SOME_CONSTANT = SOME_CONSTANT
一百萬次(我發現這既醜陋又容易出錯)。
達到此目的的最佳方法是什麼?
我的node.js模塊太大了,所以我將它分成幾個較小的(子)模塊。導出node.js中的所有對象
我複製&粘貼的所有物體都清晰到每個子模塊組成,現在看起來像
var SOME_CONSTANT = 10;
function my_func() { etc... };
現在我想一切都在每個子模塊,大批出口,而不必明確說exports.SOME_CONSTANT = SOME_CONSTANT
一百萬次(我發現這既醜陋又容易出錯)。
達到此目的的最佳方法是什麼?
module.exports = {
SOME_CONSTANT_0 : SOME_CONSTANT_1 ,
SOME_CONSTANT_1 : SOME_CONSTANT_2 ,
SOME_CONSTANT_2 : SOME_CONSTANT_3
}
那麼爲什麼你需要那個「百萬」不變的出口?
我假設你不想導出每個局部變量。
我會繞過這些天的自動化,但現在我經常使用這種技術。
var x1 = { shouldExport: true } ;
//創建一個在您喜愛的編輯器宏搜索和替換模塊,使
x1.name = value ; // instead of var name = value
和
name becomes x1.name
//主體
for (var i in x1) { exports.better_longer_name[i] = x1[i] ;}
//or if you want to add all directly to the export scope
for (var i in x1) { exports[i] = x1[i] ; }
因爲這複製代碼(DRY,邀請錯誤),加上是醜陋的。我更喜歡自動化的解決方案,我可以複製並粘貼到每個子模塊中。 – user124114
我認爲你需要一些技巧來重建你的代碼,例如替換=:和;至 , –