一、npm常用命令
npm --version
(2)升級npm版本
npm install --global npm
(3)下載package
-
向導式生成包說明文件package.json
npm init
這個命令會在當前目錄生成一個package.json文件,這個文件中會記錄一些關於項目的信息,比如:項目的作者,git地址,入口文件、命令設置、項目名稱和版本號等等,一般情況下這個文件是必須要有的,方便后續的項目添加和其他開發人員的使用。
-
快速生成包說明文件package.json
npm init -y
-
下載包
npm stall 包名
簡寫
npm i 包名
-
下載包並添加pachage.json里的依賴項dependencies屬性
npm install --save 包名 npm install 包名 --save
-
一次性把dependencies依賴項里的包全部下載
安裝項目依賴,在項目根目錄執行
npm install
npm install 包名 --save-dev(npm install 包名 -D) :安裝的包只用於開發環境,不用於生產環境
npm install 包名 --save (npm install 包名 -S):安裝的包需要發布到生產環境的
-
安裝指定版本的包
npm install XXX@latest npm install XXX@2.0.0 npm i XXX@">=2.0.0 <2.5.0"
這里的
next
就是一個tag
如果不指定的話,有一個默認的latest。 以及第二條指定安裝2.0.0
版本的XXX
。 最后一條則會在范圍規則內選擇最新的版本進行安裝。
(4)刪除package
-
刪除包文件,但是包說明文件package.json里的dependencies屬性還存在
npm uninstall 包名
-
刪除包文件,刪除的同時也刪除包括包說明文件package.json里的dependencies屬性
npm uninstall --save 包名
(5)查看相關幫助
-
查看全部命令的使用幫助
npm help
-
查看具體操作命令的使用幫助
npm xxx --help
關於命令別名縮寫
npm install = npm i npm i --save = npm i -S npm i --save-dev = npm i -D
二、包說明文件package.json
①生成包說明文件
npm init
或者快速生成
npm init -y
如下:
②依賴項dependencies的生成,下載並保存依賴項到package.json
npm install --save 包名
或者
npm install 包名 --save
簡寫
npm -S 包名
比如下載jquery得到如下:
如果后面誤刪了文件node_modules,只要有這個配置文件,
在項目根目錄,通過命令
npm install
就可以把dependencies屬性里的所屬版本的文件全部下載回來
三、packjson-lock.json文件
①npm5以前的版本則不會有這個文件,npm5以后的版本會出現package-lock.json這個文件,當安裝包的時候,會自動生成或者更新這個文件。
②package-lock.json會保存node_modules中所有包的信息(版本,下載地址等),如果執行命令
npm install
可以重新快速安裝所有的包(速度可以提升很多)
③從文件來看,有一個lock就是鎖的意思,這個lock是用來鎖定版本的,可以防止自動升級新版
④注意:npm5以后的版本不用添加
--save
也可以自動保存依賴信息依賴項dependencies
四、使用用淘寶鏡像解決npm速度慢的問題
由於眾所周知的問題,npm服務器由於在國外,國內鏈接比較慢,所以我們把npm的源替換為淘寶的源。
①方式一:永久安裝
在任意目錄都可以執行,-g表示安裝到全局環境中(默認是當前目錄)
npm install -g cnpm --registry=https://registry.npm.taobao.org
然后就可以把cnpm
當作npm
來用了,如安裝包的時候把cnpm代替npm,比如:
#這里還是走國外的服務器,比較慢 npm install jquery #cnpm命令會使用淘寶的服務器下載jquery cnpm install jquery
②方式二:如果不想安裝cnpm,但是又想使用淘寶的服務器下載,每次安裝包的操作
npm --registry https://registry.npm.taobao.org install 包名
③方式三:第二種方式每次使用淘寶服務器需要加源很麻煩,這里可以添加配置文件解決
npm config set registry https://registry.npm.taobao.org
只要經過上面的命令配置,則以后所有的npm install 命令都會默認通過淘寶的服務器下載
驗證是否成功:
npm config get registry
之后安裝包安裝正常安裝命令即可使用淘寶鏡像
五、使用插件nodemon(修改代碼之后自動重啟)
使用第三方命令行工具nodemon插件,nodemon解決我們頻繁修改代碼后自動重啟服務器的問題
使用第三方命令行工具nodemon插件,nodemon是一個基於nodejs開發的一個第三方命令行工具,使用的時候需要獨立安裝:
#在任意目錄執行改命令都可以 #也就是說,需要--global 來安裝的包都可以在任意目錄執行 npm install --global nodemon
安裝完畢之后,使用
#之前是這樣啟動node app.js #使用nodemon啟動 nodemon app.js
只要通過nodemon.js啟動的服務,則會監視文件變化,當文件發生變化的時候,會自動重啟服務器
nodemon --version 查看版本
六、nrm的安裝與使用
什么是nrm
nrm 是一個 npm 源管理器,允許你快速地在 npm源間切換。
簡單的說,nrm就是管理npm下載的網址源頭的工具,哪個下載點快就可以用nrm切換到那個下載源。
什么意思呢,npm默認情況下是使用npm官方源(使用npm config ls命令可以查看),在國內用這個源肯定是不靠譜的,一般我們都會用淘寶npm源:https://registry.npm.taobao.org/,修改源的方式也很簡單,在終端輸入:
npm set registry https://registry.npm.taobao.org/
再npm config ls查看,已經切換成功。
那么,問題來了,如果哪天你又跑去國外了,淘寶源肯定是用不了的,又要切換回官網源,或者哪天你們公司有自己的私有npm源了,又需要切換成公司的源,這樣豈不很麻煩?於是有了nrm。
nrm安裝
npm install -g nrm
nrm使用
(1)查看可選源(帶*號即為當前使用源)
nrm ls
(2)查看當前使用源
nrm current
(3)切換源
nrm use <registry>
其中,registry為源名。
比如:切換為官方源
(4)添加源
nrm add <registry> <url>
其中,registry為源名,url為源地址。
比如:添加一個公司私有的npm源,源地址為:http://192.168.22.11:8888/repository/npm-public/,源名為cpm(隨意取)。
nrm add cpm http://192.168.22.11:8888/repository/npm-public/
(5)刪除源
nrm del <registry>
其中,registry為源名。
比如:刪除剛才添加的cpm源
nrm del cpm
(6)測試源速度(即響應時間)
nrm test <registry>
其中,registry為源名。
比如:測試官方源和淘寶源的響應時間
nrm test npm
參考資料
[1]https://www.cnblogs.com/EricZLin/p/9292408.html