2011-12-19 122 views
7

我使用的是Express.js Node.js的,我需要共享模塊之間的變量,我必須這樣做,因爲這個變量是MySQL連接池,該池在創建節點開始3個MySQL連接。 js然後我希望其他模塊將使用這些連接而不重新創建其他池。如何在模塊之間共享相同的變量?

這可能嗎?

感謝

回答

11

有2個選項:

  • 作出這樣的變量是全球性的,爲前:global.MySQL_pool = ...。通過這種方式,您可以使用MySQL_pool作爲變量來訪問它。
  • 傳爲每個在你需要它的功能PARAM,爲前模塊:

    VAR MySQL_pool = ... VAR my_db_module =需要( './ DB')(MySQL_pool);

其中db.js是:

module.exports = function (pool) { 
    // access the MySQL pool using the pool param here 
}