文章目錄
- npm
- npm基本使用
- npm搜索包
- 生產環境與開發環境
- 開發依賴與生產依賴
- 全局安裝
- 環境變量Path
- 安裝包依賴
- 安裝指定版本的包、刪除依賴
- 配置命令別名
- cnpm
- 安裝
- 操作命令:
- 配置
- yarn
- yarn安裝及常用命令
- yarn 配置淘寶鏡像
- NVM
- 使用
- 常用命令
- 擴展內容
- npm和yarn的選擇
- npm發布包、更新包和刪除包(了解)
- 擴展內容
[包]英文單詞是package,代表了一組特定功能的源碼集合
包管理工具:
管理[包]的應用軟件,可以對[包]進行下載安裝,更新,刪除,上傳等操作借助包管理工具,可以快速開發項目,提升開發效率
包管理工具是一個通用的概念,很多編程語言都有包管理工具,所以掌握好包管理工具非常重要
前端常用的包管理工具
npm
、yarn、cnpm
npm
npm基本使用
創建一個空目錄,然后以此目錄作為工作目錄啟動命令行工具,執行npm init
1.npm init
命令的作用是將文件夾初始化為一個[包],交互式創建package.json文件
2.package.json是包的配置文件,每個包都必須要有package.json
3.package.json內容示例:
npm搜索包
創建一個包名字為A,A中安裝了包的名字是B,就說B是A的一個依賴包,也會說A依賴于B
require導入npm包基本流程
require(‘uniq’)
1.在當前文件夾下node_modules中尋找同名的文件夾
2.如果1不行,在上級目錄中下的node_modules中尋找同名的文件夾,直至找到磁盤根目錄
生產環境與開發環境
1.開發環境是程序員專門用來寫代碼的環境
,一般是指程序員的電腦,開發環境的項目一般只能程序員自己訪問
2.生產環境是項目代碼正式運行的環境
,一般是指正式的服務器電腦,生產環境的項目一般每個客戶都可以訪問
開發依賴與生產依賴
全局安裝
命令行窗口輸入:npm i -g nodemon
全局安裝完成之后就可以在命令行的任何位置運行;nodemon命令該命令的作用是自動重啟node 應用程序
- 全局安裝的命令不受工作目錄位置影響
- 可以通過
npm root -g
可以查看全局安裝包的位置 - 不是所有的包都適合全局安裝,只有全局類的工具才適合,可以通過查看包的官方文檔來確定安裝方式,
環境變量Path
Path是操作系統的一個環境變量,可以設置一些文件夾的路徑,在當前工作目錄下找不到可執行文件時,就會在環境變量Path的目錄中挨個的查找,如果找到則執行,如果沒有找到就會報錯
補充說明:
- 如果希望某個程序在任何工作目錄下都能正常運行,就應該將該程序的所在目錄配置到環境變量Path中
- windows 下查找命令的所在位置
cmd 命令行
中執行where nodemon
powershell命令行
執行get-command nodemon
安裝包依賴
在項目協作中有一個常用的命令就是npm i
,通過該命令可以依據package.json和package-lock.json
的依賴聲明安裝項目依賴
npm i (npm install全寫)
node_modules文件夾大多數情況都不會存入版本庫
安裝指定版本的包、刪除依賴
配置命令別名
配置命令別名可以更簡單的執行命令
配置package.json中的scripts屬性:
{
.
.
.
"scripts":{
"server":"node server.js",
"start":"node index.js",},..
}
配置完成之后,可以使用別名執行命令
npm run server
npm run start /start別名比較特別,使用時可以省略run
補充說明:
npm start
是項目中常用的一個命冷,一般用來啟動項目
- npm run有自動向上級目錄查找的特性,跟require 函數也一樣
- 對于陌生的項目,我們可以通過查看scripts屬性來參考項目的一些操作
cnpm
cnpm 是一個淘寶構建的 npmjs.com 的完整鏡像,也稱為『淘寶鏡像』,網址https://npmmirror.com/
cnpm 服務部署在國內 阿里云服務器上 , 可以提高包的下載速度
官方也提供了一個全局工具包 cnpm ,操作命令與 npm 大體相同
安裝
通過npm安裝cnpm:在命令行窗口輸入
npm install -g cnpm --registry=https://registry.npmmirror.com
操作命令:
配置
1.直接配置
2.工具配置
- nrm報錯解決辦法:
解決: npm install -g nrm open@8.4.2 –save
- 切換鏡像:命令行窗口輸入
nrm ls
會列出支持的鏡像地址,輸入nrm use npm
補充說明:
- 建議使用第二種方式 進行鏡像配置,因為后續修改起來會比較方便
- 雖然 cnpm 可以提高速度,但是 npm 也可以通過淘寶鏡像進行加速,所以 npm 的使用率還是高于 cnpm
- 使用淘寶的沒法上傳,因為淘寶的是只讀鏡像,只能下載不能上傳
yarn
npm是同步的、yarn是異步的
yarn安裝及常用命令
可以使用npm安裝yarn:npm i -g yarn
常用命令:
這里有個小問題就是 全局安裝的包不可用(沒有配置到環境變量path中) ,yarn 全局安裝包的位置可以通過 yarn global bin來查看,
yarn 配置淘寶鏡像
可以通過如下命令配置淘寶鏡像:
yarn config set registry https://registry.npmmirror.com/
可以通過 yarn config list
查看 yarn 的配置項
NVM
nvm 全稱 Node Version Manager 顧名思義它是用來管理 node 版本的工具
,方便切換不同版本的Node.js
使用
nvm 的使用非常簡單,跟 npm 的使用方法類似
下載安裝:
首先先下載 nvm,下載地址
https://github.com/coreybutler/nvm-windows/releases
選擇 nvm-setup.exe 下載即可
常用命令
擴展內容
npm和yarn的選擇
可以根據不同的場景進行選擇
- 個人項目
如果是個人項目, 哪個工具都可以 ,可以根據自己的喜好來選擇 - 公司項目
如果是公司要根據項目代碼來選擇,可以通過鎖文件判斷 項目的包管理工具
npm 的鎖文件為 package-lock.json
yarn 的鎖文件為 yarn.lock 包管理工具盡量不要混著用
npm發布包、更新包和刪除包(了解)
擴展內容
很多語言中都有包管理工具