2015-07-21 126 views
1

我準備爲「生產模式」(MEAN環境,討論服務器端)準備一個Web服務器,因此也創建了package.json文件爲我的項目。因爲它現在使用了大量文件和模塊,所以我試圖找出最簡單和最可靠的方法來定義我的package.json文件需要考慮哪些模塊:Node.js:爲package.json確定手動安裝的模塊和版本號

1)有沒有辦法告訴Node.js自動創建一個package.json文件,其中包含從安裝Node.js(=對我當前的Node.js項目至關重要)手動添加的所有模塊? 2)如果不是,我怎樣才能列出那些手動安裝的模塊(與使用類似npm -g ls --json的東西列出所有模塊相反)?

回答

2

我完全不知道你所說的「手動」的意思,但得到的是安裝在您的項目目錄,你可以使用這個「根級別」模塊列表:

$ npm ls --depth 0 --json 

或者,如果你安裝了全球的模塊(不這樣做...):

$ npm ls -g --depth 0 --json 

提示:開始一個新項目時,都npm創建一個新的package.json馬上:

$ npm init 

當您安裝所需的模塊,你可以讓他們加入到它自動:

$ npm install module --save 
+0

我說話被我安裝的node.js安裝(=模塊後所有模塊不與本地來Node.js的)。 –

+0

@IgorP。我是否感覺到你實際上在全局安裝模塊(使用'npm install -g ...')? – robertklep

+0

通常我會安裝像這樣的模塊:sudo npm install MODULENAME 對不起,但有什麼區別:sudo npm install -g MODULENAME?全球在這方面的含義是什麼? –

0

通常,在安裝每個節點模塊時,將其保存到package.json,其中npm install modulename --savenpm install modulename --save-dev

如果您需要安裝的所有模塊的追溯添加到的package.json,你可以寫一個簡短的腳本,比如一個建議這裏:https://stackoverflow.com/a/13381344/5070356

將從每個依賴搶名稱/版本並將其添加到您的package.json