NPM使用一個名為package.json的簡單JSON文件來共享模塊信息。
要在當前文件夾中創(chuàng)建一個package.json文件,只需運行以下代碼。
$npm init
運行后將問你幾個問題,如模塊的名稱和版本。只需按Enter鍵直到結束。
這將在當前文件夾中創(chuàng)建一個package.json,其名稱設置為當前文件夾,版本設置為0.0.0,以及一些其他合理的默認值。
{ "name": "myData", "version": "0.0.0", "description": "", "main": "index.js", "scripts": { "test": "echo \"Error: no test specified\" && exit 1" }, "author": "", "license": "ISC" }
讓我們安裝一個模塊,例如,underscore(www.npmjs.org/package/underscore)到一個文件夾。
下載最新版本的underscore,你只需運行以下命令。
$ npm install underscore
上面的代碼生成以下結果。
這將從npmjs.org下載最新版本的underscore
,并將其放入當前文件夾中的node_modules / underscore。
要加載這個模塊,現(xiàn)在你所需要做的是進行require('underscore')
調用。
以下代碼加載underscore庫,并將數(shù)組的最小元素輸出到控制臺。
var _ = require("underscore");
console.log(_.min([3, 1, 2])); // 1
上面的代碼生成以下結果。
每當你運行npm install,你有一個可選的命令行標志可用:--save
告訴NPM寫關于你安裝到package.json中的信息。
執(zhí)行npm init創(chuàng)建一個包文件。
$ npm init
發(fā)出以下命令將信息保存到package.json。
$ npm install underscore --save
上面的代碼生成以下結果。
如果使用 ?-save 運行安裝,不僅會將underscore下載到node_modules,還將更新package.json中的dependencies以指向underscore的已安裝版本。
"dependencies": { "underscore": "^1.6.0" }
通過跟蹤dependencies,我們知道我們正在使用的特定庫的哪個發(fā)布版本。
要package.json中刷新node_modules文件夾,我們可以運行以下命令:
$ npm install
這只是查看你的package.json文件,并下載package.json中指定dependencies的一個新副本。
要查看已安裝的包,請運行 npm ls
命令。
$ npm ls ... +-- underscore@1.6.0
要刪除包,請使用 npm uninstall
或 npm rm
命令,并指定一個或多個包的名稱。
npm rm underscore --save
在本地從node_modules中刪除underscore文件夾,并修改package.json的dependencies部分。你可以通過添加-g
選項來刪除全局包。
以下代碼顯示如何使用 npm rm
刪除命令模塊。
npm rm commander
以下代碼顯示了安裝具有大量dependencies的模塊
$ npm install request npm http GET https://registry.npmjs.org/request npm http GET https://registry.npmjs.org/tunnel-agent npm http GET https://registry.npmjs.org/json-stringify-safe ...truncated... npm http 304 https://registry.npmjs.org/delayed-stream/0.0.5 request@2.34.0 node_modules\request +-- aws-sign2@0.5.0 ...truncated... +-- json-stringify-safe@5.0.0 +-- form-data@0.1.2 (async@0.2.10, combined-stream@0.0.4)
NPM不僅安裝了request,還帶來了一些其他request依賴的包。
更多建議: