如果您想開發自己的npm套件,首先必須在本地測試它。

我在一個我希望模組化的專案中遇到了這個需求。

我建了一個名為flaviocopes-common-database的套件作為示例。

我在套件中添加了一個package.json檔案,該檔案包含了模組名稱在name屬性中,以及一些依賴項:

{
 "name": "flaviocopes-common-database",
 "version": "1.0.0",
 "description": "",
 "main": "index.js",
 "dependencies": {
 "pg": "^8.0.2",
 "sequelize": "^5.21.6"
 }
}

然後我執行了

npm link

這會在系統的/usr/local/lib/node_modules/資料夾中創建一個符號連結,該資料夾包含全域安裝的npm套件,即使用npm -g安裝的套件。

我有以下連結

/usr/local/lib/node\_modules/flaviocopes-common-database

指向我本地的檔案

/Users/flavio/dev/code/flaviocopes-common-database

現在在另一個專案中,我想使用這個模組,所以我執行了

npm link flaviocopes-common-database

然後我可以使用常見的require()語法在Node.js代碼中引入它:

const database = require('flaviocopes-common-database')