NPM是隨同NodeJS一起安裝的包管理工具
允許用戶從NPM服務器下載別人撰寫的第三方包到本地使用
允許用戶從NPM服務器下載并安裝別人撰寫的命令列程式到本地使用
允許用戶將自己撰寫的包或命令列程式上傳到NPM服務器供別人使用
由于新版的nodejs已經集成了npm,所以npm也一并安裝好了,同樣可以通過輸入 "npm -v" 來測驗是否成功安裝

如果你安裝的是舊版本的 npm,可以很容易得通過 npm 命令來升級
sudo npm install npm -g
/usr/local/bin/npm -> /usr/local/lib/node_modules/npm/bin/npm-cli.js
[email protected] /usr/local/lib/node_modules/npm
Window 系統使用以下命令
npm install npm -g
使用淘寶鏡像的命令
npm install -g cnpm --registry=https://registry.npm.taobao.org
npm 安裝 Node.js 模塊語法格式
npm install <Module Name>
如果淘寶鏡像就是cnpm
使用 npm 命令安裝常用的 Node.js web框架模塊 express
npm install express
安裝好之后,express 包就放在了工程目錄下的 node_modules 目錄中,因此在代碼中只需要通過 require('express') 的方式就好,無需指定第三方包路徑,
var express = require('express');
npm 的包安裝分為本地安裝(local)、全域安裝(global)兩種
從敲的命令列來看,差別只是有沒有-g而已
npm install express # 本地安裝
npm install express -g # 全域安裝
如果出現以下錯誤
npm err! Error: connect ECONNREFUSED 127.0.0.1:8087
解決辦法為
npm config set proxy null
本地安裝:
- 1. 將安裝包放在 ./node_modules 下(運行 npm 命令時所在的目錄),如果沒有 node_modules 目錄,會在當前執行 npm 命令的目錄下生成 node_modules 目錄,
- 2. 可以通過 require() 來引入本地安裝的包,
全域安裝:
- 1. 將安裝包放在 /usr/local 下或者你 node 的安裝目錄,
- 2. 可以直接在命令列里使用,
使用全域方式安裝 express
npm install express -g
安裝程序輸出如下內容,第一行輸出了模塊的版本號及安裝位置

可以使用以下命令來查看所有全域安裝的模塊
npm list -g

如果要查看某個模塊的版本號,可以使用命令如下
npm list grunt

package.json 位于模塊的目錄下,用于定義包的屬性
package.json屬性說明:
-
name - 包名,
-
version - 包的版本號,
-
description - 包的描述,
-
homepage - 包的官網 url ,
-
author - 包的作者姓名,
-
contributors - 包的其他貢獻者姓名,
-
dependencies - 依賴包串列,如果依賴包沒有安裝,npm 會自動將依賴包安裝在 node_module 目錄下,
-
repository - 包代碼存放的地方的型別,可以是 git 或 svn,git 可在 Github 上,
-
main - main 欄位指定了程式的主入口檔案,require('moduleName') 就會加載這個檔案,這個欄位的默認值是模塊根目錄下面的 index.js,
-
keywords - 關鍵字
可以使用以下命令來卸載 Node.js 模塊
npm uninstall express
卸載后,你可以到 /node_modules/ 目錄下查看包是否還存在,或者使用以下命令查看
npm ls
可以使用以下命令更新模塊
npm update express
使用以下來搜索模塊:
npm search express
創建模塊,package.json 檔案是必不可少的
我們可以使用 NPM 生成 package.json 檔案,生成的檔案包含了基本的結果
npm init
需要根據你自己的情況輸入,在最后輸入 "yes" 后會生成 package.json 檔案,
接下來我們可以使用以下命令在 npm 資源庫中注冊用戶(使用郵箱注冊)
npm adduser
Username: mcmohd
Password:
Email: (this IS public) [email protected]
用以下命令來發布模塊
npm publish
版本號更新原則:
語意版本號分為X.Y.Z三位,分別代表主版本號、次版本號和補丁版本號,當代碼變更時,版本號按以下原則更新,
- 如果只是修復bug,需要更新Z位,
- 如果是新增了功能,但是向下兼容,需要更新Y位,
- 如果有大變動,向下不兼容,需要更新X位,
npm常用命令:
-
NPM提供了很多命令,例如
install和publish,使用npm help可查看所有命令, -
使用
npm help <command>可查看某條命令的詳細幫助,例如npm help install, -
在
package.json所在目錄下使用npm install . -g可先在本地安裝當前命令列程式,可用于發布前的本地測驗, -
使用
npm update <package>可以把當前目錄下node_modules子目錄里邊的對應模塊更新至最新版本, -
使用
npm update <package> -g可以把全域安裝的對應命令行程式更新至最新版, -
使用
npm cache clear可以清空NPM本地快取,用于對付使用相同版本號發布新版本代碼的人, -
使用
npm unpublish <package>@<version>可以撤銷發布自己發布過的某個版本代碼,
大家都知道國內直接使用 npm 的官方鏡像是非常慢的,這里推薦使用淘寶 NPM 鏡像,
淘寶 NPM 鏡像是一個完整 npmjs.org 鏡像,你可以用此代替官方版本(只讀),同步頻率目前為 10分鐘 一次以保證盡量與官方服務同步,
你可以使用淘寶定制的 cnpm (gzip 壓縮支持) 命令列工具代替默認的 npm:
npm install -g cnpm --registry=https://registry.npm.taobao.org
這樣就可以使用 cnpm 命令來安裝模塊了:
cnpm install [name]
如果你遇到了使用 npm 安 裝node_modules 總是提示報錯:報錯: npm resource busy or locked.....,
可以先洗掉以前安裝的 node_modules :
npm cache clean
npm install
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/143992.html
標籤:JavaScript
上一篇:vue中的事件修飾符
