2012-05-05 50 views
4

我正在尋找類似於Windows DLL的概念。作爲一個具體的例子,假設我有一個函數加密,我想分享幾個不相關的項目。如果我想在理想情況下改變實現,那麼一旦每個項目都有權訪問新的實現,我就可以這樣做。 Node.js中有這樣的機制嗎?如何在Node.js中實現共享庫?

+0

請看[此答案](https://stackoverflow.com/a/45320446/5646315)。這可能會有所幫助 –

回答

2

看一看「寫一庫」

如果你正在寫的即意被他人使用的程序這個document特別是部分, 那麼最重要的事情要指定你的包.json文件是 的主要模塊。這是作爲 計劃入口點的模塊。

如果你有大量的JavaScript代碼,然後將自定義是把它放在 的./lib文件夾中的項目。

在你的package.json文件中指定一個主模塊。這是模塊 ,當用戶需要時(「你的庫」),你的用戶將加載它。理想情況下,這個 模塊應該公開庫中的所有功能。

如果您希望您的用戶能夠從庫的「內臟」 中加載子模塊,那麼他們需要指定完整的路徑。 這是很多工作要記錄!這是更好,更具前瞻性的 來簡單地指定一個主模塊,然後,如果有必要,有辦法動態加載他們所需的東西 。

例如,您可能有一個翻轉庫,它是由flip/lib/widgets/*。js文件中的文件定義的 小部件對象的集合。 而不是讓你的用戶確實需要('flip/lib/widgets/blerg.js') 來獲得blerg部件,最好是這樣: require('flip')。loadWidget('blerg')。

相關問題