2013-11-14 105 views
0

我非常不理解如何開發我的新模塊。通過package.json創建模塊

在node_modules \故宮\ node_modules我創建的文件夾MYX有2個文件 的package.json

{ 
"name" : "some", 
"main" : "lib.js" 
} 

lib.js

console.log('lib'); 

我運行服務器

require('myx'); 

錯誤: 找不到模塊'myx'

+1

NPM是爲共享的模塊,你可能只想創建一個新文件'myx.js'使用代碼填充它,然後在另一個文件中使用'require('./ myx.js')'; – jeremy

回答

2

您不應該手動編輯node_modules文件夾內的任何內容。該文件夾由npm軟件包管理器管理,並可能會覆蓋您的更改。

如果您只想要require文件,只需將該文件放在應用程序的文件夾中,並使用合格的文件系統路徑,如require('./myx')

如果你想創建一個新的模塊您將在多個項目中使用和/或發佈到公共NPM註冊表:

  1. 爲模塊–創建一個新的文件夾,例如MYX
  2. 在該文件夾中運行npm init。它會幫助你創建一個package.json文件。
  3. 創建你的js文件。

您現在可以使用完全合格的路徑從其他項目中將require模塊。例如,

require('/home/me/myx'); 

節點使用其file loading rules準確地確定哪個js文件從文件夾MYX將加載。

以這種方式加載模塊對於開發和測試來說是很好的,但您可能想要將模塊安裝到您的項目中(就像其他模塊一樣)。

幸運的是,npm支持installing from sources other than the registry。在項目文件夾,運行:

npm install /home/me/myx 

NPM將安裝模塊項目的node_modules,這意味着你可以

require('myx');