例如,我有posts.js
用,增加了數據發佈到一個SQLite數據庫的功能,所以我需要需要在該文件中sqlite
庫。如何使用現有庫的模塊導出?
但是,如果我有另一個叫做日申請與comments.js
,增加了註釋數據的功能,我需要再次要求在該文件中sqlite
庫。
這就是我正在做的那一刻,我可以弄清楚如何得到它的工作的唯一途徑。有一個更好的方法嗎?例如要求主文件中的sqlite
庫,並且能夠在posts.js
和comments.js
中使用它?
例如,我有posts.js
用,增加了數據發佈到一個SQLite數據庫的功能,所以我需要需要在該文件中sqlite
庫。如何使用現有庫的模塊導出?
但是,如果我有另一個叫做日申請與comments.js
,增加了註釋數據的功能,我需要再次要求在該文件中sqlite
庫。
這就是我正在做的那一刻,我可以弄清楚如何得到它的工作的唯一途徑。有一個更好的方法嗎?例如要求主文件中的sqlite
庫,並且能夠在posts.js
和comments.js
中使用它?
沒有錯,你做的方式。這是人們如何使用require
。
您將無法如果在主文件要求sqlite
使用它,因爲你用擲undefined
錯誤的其他文件中缺少他們sqlite
。
你可以設置你的sqlite
連接在你的main.js
像這樣:
global.db = require('sqlite');
,然後它會在所有其他文件的可用
有沒有辦法,因爲在執行模塊的代碼之前,Node.js會用一個函數包裝器來包裝它,以保持頂層變量的作用範圍在模塊而不是全局對象。
然而,你可以在一個全局變量設置:global.sqlite = require('sqlite');
,但你不應該這樣做,以避免輸入「要求」。
你應該嘗試使用像依賴注入一些設計模式。