一、什麼是Node.js和npm?

在開始使用npm之前,我們先簡單瞭解它的“身份”:
- Node.js:是一個基於Chrome V8引擎的JavaScript運行環境,讓JavaScript可以脫離瀏覽器在服務器端運行。它讓前端開發者也能寫後端代碼,實現全棧開發。
- npm:全稱Node Package Manager,是Node.js的默認包管理工具,相當於Node.js的“應用商店”。通過npm,你可以快速下載、安裝、管理別人寫好的JavaScript代碼包(比如框架、工具庫等),避免重複造輪子。

二、安裝Node.js和npm

要使用npm,首先得安裝Node.js(npm會隨Node.js一起安裝)。以下是不同系統的安裝方法:

1. Windows系統

  • 官網下載:訪問 Node.js官網,點擊“Download”下載對應系統版本(推薦LTS穩定版)。
  • 安裝時勾選“Add to PATH”(自動配置環境變量),一路下一步即可。
  • 驗證:打開命令提示符(CMD)或PowerShell,輸入 node -vnpm -v,如果顯示版本號(如v18.16.0),說明安裝成功。

2. Mac系統

  • 方法1(推薦):用Homebrew安裝。先安裝Homebrew(如果沒裝過):
  /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

然後執行 brew install node
- 方法2:官網下載安裝包,步驟同Windows。
- 驗證:打開終端,輸入 node -vnpm -v

3. Linux系統(以Ubuntu爲例)

  • 打開終端,執行:
  sudo apt update
  sudo apt install nodejs npm
  • 驗證同上。

三、npm的核心功能:初始化項目

在開始使用npm管理依賴前,需要先初始化一個項目,生成 package.json 文件(項目配置文件,記錄項目信息和依賴)。
步驟
1. 新建一個文件夾(如 my-project),打開終端進入該目錄。
2. 執行 npm init,按提示填寫項目名稱、版本、描述等信息(也可直接用 npm init -y 快速生成默認配置)。
3. 生成的 package.json 會包含項目基本信息,例如:

   {
     "name": "my-project",
     "version": "1.0.0",
     "description": "",
     "main": "index.js",
     "scripts": {
       "test": "echo \"Error: no test specified\" && exit 1"
     },
     "keywords": [],
     "author": "",
     "license": "ISC"
   }

其中 scripts 是關鍵,後續可定義項目啓動命令(如 npm start)。

四、安裝依賴:npm install

npm最常用的功能是安裝第三方包。基本語法:

npm install <包名>

1. 本地安裝 vs 全局安裝

  • 本地安裝(默認):包會被安裝到項目根目錄的 node_modules 文件夾下,僅當前項目可用。
    例如:安裝Web框架 express(生產環境依賴):
  npm install express --save

--save 會自動將依賴寫入 package.jsondependencies 字段,即生產依賴)。

  • 全局安裝-g 參數):包會被安裝到系統級目錄,可在任何項目中直接調用。
    例如:安裝代碼格式化工具 prettier(全局工具):
  npm install -g prettier

安裝後可在終端直接執行 prettier --version 驗證。

2. 生產依賴 vs 開發依賴

  • 生產依賴dependencies):項目運行時必須的依賴(如 reactvueexpress)。
    安裝時用 --save(或簡寫 -S):
  npm install react --save
  • 開發依賴devDependencies):僅開發時需要的依賴(如代碼檢查工具 eslint、構建工具 webpack)。
    安裝時用 --save-dev(或簡寫 -D):
  npm install eslint --save-dev

提示:安裝時可省略 --save,npm會自動根據依賴類型寫入對應字段(需確保 package.json 配置正確)。

五、管理依賴:查看、更新、卸載

1. 查看已安裝依賴

  • 查看所有依賴:
  npm list

(會顯示 node_modules 下的所有依賴樹)。

  • 查看生產依賴:
  npm list --production

2. 更新依賴

  • 更新單個依賴:
  npm update <包名>

(更新到最新兼容版本,需注意版本號規則)。

  • 更新所有依賴:
  npm update

3. 卸載依賴

  • 卸載生產依賴:
  npm uninstall <包名>

(會自動從 package.jsonnode_modules 中移除)。

  • 卸載開發依賴:
  npm uninstall <包名> --save-dev

4. 清理依賴

  • 移除未在 package.json 中聲明的依賴:
  npm prune

六、常用npm命令速查表

命令 作用
npm init 初始化項目,生成 package.json
npm install <包名> 安裝包到本地(默認生產依賴)
npm install -g <包名> 全局安裝包
npm install -S <包名> 安裝生產依賴並寫入 dependencies
npm install -D <包名> 安裝開發依賴並寫入 devDependencies
npm uninstall <包名> 卸載包
npm update <包名> 更新包到最新版本
npm list 查看所有依賴
npm start 運行 package.jsonscriptsstart 腳本
npm run <腳本名> 運行自定義腳本(如 npm run build

七、實用技巧:解決國內訪問慢問題

由於npm服務器在國外,國內用戶訪問可能較慢。可通過以下方式加速:

1. 使用淘寶鏡像(推薦)

  • 臨時使用淘寶鏡像安裝:
  npm install <包名> --registry=https://registry.npm.taobao.org
  • 永久配置淘寶鏡像:
  npm config set registry https://registry.npm.taobao.org
  • 驗證是否生效:
  npm config get registry  # 顯示淘寶鏡像地址

2. 使用cnpm(淘寶官方工具)

  • 安裝cnpm:
  npm install -g cnpm --registry=https://registry.npm.taobao.org
  • 用cnpm代替npm:
  cnpm install <包名>

八、注意事項

  1. 不要上傳 node_modules 到Git
    node_modules 體積大且重複,可在 .gitignore 中添加:
   node_modules/
   package-lock.json
  1. 版本號規則
    package.json 中依賴版本號用 ^(兼容小版本更新)或 ~(僅補丁版本更新),例如:
    - ^1.2.3:允許更新到 1.3.x1.4.x(小版本)。
    - ~1.2.3:僅允許更新到 1.2.x(補丁版本)。

  2. 避免全局安裝過多工具
    全局安裝的包僅在終端可用,項目依賴應優先本地安裝,避免版本衝突。

總結

npm是Node.js開發的核心工具,掌握它能極大提升開發效率。從初始化項目、安裝依賴到管理版本,核心是理解 package.json 和依賴的分類(生產/開發)。通過本文的步驟和示例,你可以快速上手npm,後續可結合項目實踐深入學習更多高級功能(如腳本配置、版本鎖定等)。

現在,打開終端,嘗試創建一個項目,安裝第一個依賴吧! 🚀

小夜