npm是什麼?
npm是一個強大的包管理工具,它使開發人員能夠輕鬆地安裝、更新和管理項目依賴的包。通過初始化一個package.json 文件,我們可以描述你的項目並記錄其依賴關係。使用npm install
命令,我們可以安裝和管理包。使用npm publish
命令,我們可以發佈自己的包(由於日常很少涉及發佈自己的包,這裏就不總結了)。無論是在開發過程中還是在分享你的包時,npm都提供了豐富的功能和命令來滿足你的需求。
但是在日常搜索網上文章時,發現網上的文章總結的一大堆,而這個npm很多時候對於我們來說就是一個工具,並不涉及多麼高深的學習,所以,我這裏的這篇文章就進行高度概括的總結,力爭通過這一篇文章讓大家會用npm。
npm安裝&升級
npm不需要單獨安裝。在安裝Node的時候,會連帶一起安裝npm。但是,Node附帶的npm可能不是最新版本,最後用下面的命令,更新到最新版本。
$ sudo npm install npm@latest -g
如果是 Window 系統使用以下命令即可:
npm install npm -g
然後,運行下面的命令,查看各種信息。
# 查看 npm 命令列表
$ npm help
# 查看各個命令的簡單用法
$ npm -l
# 查看 npm 的版本
$ npm -v
# 查看 npm 的配置
$ npm config list -l
解決下載包慢的問題
因爲npm的包服務器在國外,在國內速度很慢且不穩定,所以在國內就有很多企業架設了國內的鏡像,方便國內開發者使用,日常過程中,我們經常使用的是淘寶的鏡像源,通過以下命令進行配置即可:
// 1. 清空緩存
npm cache clean --force
// 2. 切換新源
npm config set registry https://registry.npmmirror.com
配置全局依賴的保存路徑&緩存路徑
一般情況下,我們都會對全局包保存路徑和緩存路徑進行自定義,自定義方式如下:
在想要保存的目錄下新建【node_global】及【node_cache】文件夾,然後執行以下兩條命令:
npm config set prefix "/Users/Jelly/Repository/node_global"
npm config set cache "/Users/Jelly/Repository/node_cache"
npm常用指令
命令 | 說明 |
---|---|
npm init | 初始化一個新的npm項目,並生成package.json文件 |
npm install | 安裝項目依賴的所有包 |
npm install <package> | 安裝指定的包 |
npm install --save <package> | 安裝指定的包,並將其添加到dependencies 字段中 |
npm install --save-dev <package> | 安裝指定的包,並將其添加到devDependencies 字段中 |
npm uninstall <package> | 卸載指定的包 |
npm update | 更新項目依賴的所有包 |
npm update <package> | 更新指定的包 |
npm run <script> | 運行package.json文件中定義的腳本 |
npm search <keyword> | 搜索包 |
npm ls | 列出項目依賴的所有包 |
npm cache clear | 清空緩存 |
常用的命令就上表中的那麼幾個,基本覆蓋了我們日常90%的場景,如果遇到不在上表中的,再上網搜索就OK了。
npm install
和npm install -g
的區別
npm install
說明:
npm install
是針對當前項目進行包安裝,當執行npm install package-name
時,npm會自動下載並安裝指定的依賴包,並將包保存到項目的node_modules
目錄中;- 使用
npm install
命令時,如果當前目錄下存在一個package.json
文件,那麼npm會自動將安裝的依賴包加入到package.json
文件的dependencies
字段中。
npm install -g
說明:
npm install -g
命令用於全局安裝npm包,npm包可以作爲全局命令行工具使用,比如vue-cli
、create-react-app
等。這些工具在命令行中可以直接調用,而不需要在每個項目中都單獨安裝;- 全局安裝的npm包會被安裝到全局的
node_modules
目錄中,可以通過npm root -g
命令查看全局node_modules
的路徑。
npm install --save
和npm install --save-dev
的區別
npm install --save
說明:
- 安裝項目正常運行所必需的包。在項目發佈時,依賴包的安裝和版本信息會被自動讀取,確保項目在其他環境中的正確運行;
- 安裝依賴包,並將依賴包信息保存到
package.json
文件的dependencies
字段中。
npm install --save-dev
說明:
- 安裝開發環境所需的依賴包。這些依賴包通常是項目開發過程中需要用到的工具、測試框架、模擬數據等;
- 安裝依賴包,並將依賴包信息保存到
package.json
文件的devDependencies
字段中。
總結
很多時候,對於很多知識,我們只需要掌握並且能熟練使用即可,並不需要深入其背後去了解原理,而這篇文章就是這樣的一篇入門級保姆文章,一篇讓你掌握並學會使用npm。