已在使用者目錄安裝 portable Node.js,不需要系統管理員權限:
C:\Users\dindin\AppData\Local\Programs\nodejs-portable\node-v22.22.2-win-x64版本:
node --version # v22.22.2
npm --version # 10.9.7
npx --version # 10.9.7此路徑已加入使用者 PATH。若目前已開啟的終端還讀不到 node / npm,請重新開一個 PowerShell,或先在目前 session 執行:
$nodeDir = "$env:LOCALAPPDATA\Programs\nodejs-portable\node-v22.22.2-win-x64"
$env:Path = "$nodeDir;$PWD\node_modules\.bin;$env:Path"完整驗證:
npm run validate若目前終端還沒有載入 PATH,可直接使用專案內腳本:
.\scripts\validate.ps1含 production server smoke test:
.\scripts\validate.ps1 -Smoke此命令會依序執行:
npm run typecheck
npm run lint
npm run build
npm run test部署前 smoke test 可在 build 後執行:
npm run build
npm run start -- -p 3010再用瀏覽器開啟:
http://localhost:3010
npm run validate:通過- TypeScript:通過
- ESLint:通過,仍有既有 warnings
- Production build:通過
- Node test:17 passed / 0 failed
- Production smoke test:首頁 200,
/api/tripssave/read 200
仍可後續處理的 warnings:
app/page.tsx有 3 個react-hooks/exhaustive-depswarningapp/page.tsx、components/ItineraryItem.tsx、components/PosterRender.tsx有<img>可改next/image的 warning- Next metadata
themeColor建議移到viewportexport
你遇到的錯誤是:
EPERM: operation not permitted, mkdir 'D:\'
這表示 npm 試圖在 D:\ 根目錄創建文件夾,但沒有權限。
在專案目錄下執行以下命令:
# 檢查當前配置
npm config list
# 重置 prefix(如果指向錯誤位置)
npm config delete prefix
# 重置 cache 位置(如果需要)
npm config set cache "C:\Users\你的用戶名\AppData\Local\npm-cache" --global
# 清除 npm 快取
npm cache clean --force-
以管理員身份開啟 PowerShell 或命令提示字元
- 右鍵點擊「開始」按鈕
- 選擇「Windows PowerShell (管理員)」或「命令提示字元 (管理員)」
-
切換到專案目錄
cd "D:\ai設計\旅遊規劃器"
-
重新安裝依賴
npm install
在專案目錄下執行:
# 檢查 prefix 設定
npm config get prefix
# 如果返回 D:\ 或類似的根目錄,重置它
npm config set prefix "%APPDATA%\npm" --global
# 或者使用用戶目錄
npm config set prefix "%LOCALAPPDATA%\npm" --global# 刪除 node_modules 資料夾(如果存在)
rmdir /s /q node_modules
# 刪除 package-lock.json(如果存在)
del package-lock.json
# 清除 npm 快取
npm cache clean --force
# 重新安裝
npm install確保專案路徑中沒有特殊字符導致問題:
# 當前路徑
cd
# 如果路徑有問題,可以移動專案到更簡單的路徑
# 例如:C:\projects\travel-planner-
以管理員身份開啟 PowerShell
-
執行以下命令序列:
# 切換到專案目錄 cd "D:\ai設計\旅遊規劃器" # 重置 npm 配置 npm config delete prefix npm config set cache "$env:LOCALAPPDATA\npm-cache" --global # 清除快取 npm cache clean --force # 刪除舊的 node_modules(如果存在) if (Test-Path node_modules) { Remove-Item -Recurse -Force node_modules } # 刪除 package-lock.json(如果存在) if (Test-Path package-lock.json) { Remove-Item -Force package-lock.json } # 重新安裝 npm install
安裝完成後,驗證是否成功:
# 檢查 node_modules 是否存在
dir node_modules
# 檢查是否可以運行開發伺服器
npm run dev-
檢查防毒軟體
- 暫時關閉防毒軟體
- 將專案目錄加入防毒軟體白名單
-
檢查檔案權限
- 確保對專案目錄有完整讀寫權限
-
使用 yarn 替代
# 安裝 yarn npm install -g yarn # 使用 yarn 安裝依賴 yarn install
-
檢查 Node.js 版本
node --version # 應該使用 Node.js 18 或更高版本
A: 通常是 npm 配置中的 prefix 設定錯誤,指向了系統根目錄。
A: 通常不需要,重置 npm 配置即可。
A: 如果使用 --global 標誌,會影響全域配置。建議只重置必要的配置。
當你看到以下訊息時,表示安裝成功:
added XXX packages, and audited XXX packages in XXs
然後可以運行:
npm run dev訪問 http://localhost:3000 查看應用程式。