脚手架启动失败(Vue CLI/Vite/Create React App)

问题现象

执行 npm run serve(Vue CLI)/npm run dev(Vite/React)时抛出错误,典型报错:

  • Error: Cannot find module 'vue-cli-service'
  • Error: The engine "node" is incompatible with this module. Expected version ">=16.0.0". Got "14.17.0"
  • vite: error: Invalid options in vite.config.js: unknown option 'baseUrl'

深层原因

  1. 依赖损坏/缺失node_modules 未正确安装或被意外删除。
  2. 版本不兼容:Node/NPM版本与框架要求不匹配(如Vite要求Node 14.18+/16+)。
  3. 配置语法错误 :混淆不同脚手架的配置项(如Vite用base而非Vue CLI的baseUrl)。
  4. 缓存冲突:npm缓存的旧依赖与当前项目不兼容。

分步解决方案

步骤1:检查并升级Node/NPM版本(核心)

推荐用nvm(Node版本管理器) 管理多版本Node,避免全局版本冲突:

bash 复制代码
# 安装nvm(Mac/Linux)
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash

# 安装指定版本Node(如18.x,满足绝大多数框架要求)
nvm install 18

# 切换到该版本
nvm use 18

# 验证版本
node -v # 输出v18.x.x
npm -v # 输出8.x.x

Windows用户可使用 nvm-windows,操作逻辑一致。

步骤2:清理并重新安装依赖
bash 复制代码
# Mac/Linux:删除依赖和锁文件
rm -rf node_modules package-lock.json

# Windows:删除依赖和锁文件
rd /s /q node_modules && del package-lock.json

# 重新安装依赖(推荐用pnpm,速度更快)
npm install -g pnpm
pnpm install
步骤3:清理npm缓存
bash 复制代码
npm cache clean --force
步骤4:修正配置文件语法

以Vite为例,避免混淆Vue CLI的配置项:

js 复制代码
// vite.config.js 正确配置
export default {
  base: '/my-project/', // 替代Vue CLI的baseUrl(项目基础路径)
  server: { port: 3000 } // 端口配置
}

验证

重新执行 npm run dev,项目正常启动并在浏览器访问 localhost:3000 则解决。

相关推荐
clawdashi26 分钟前
2026 办公 Agent 选型指南:按场景分五类,一次讲清
前端·人工智能
BreezeJiang31 分钟前
JWT 登录不是存个 token:React 鉴权真正要闭合的是一条数据流
javascript·react.js·axios
驳是31 分钟前
代码洁癖患者会喜欢的几款 CLI 小工具
前端
Csvn33 分钟前
🛋️ requestIdleCallback:把非关键任务塞进浏览器的"空闲时间",告别卡顿
前端
江华森34 分钟前
从 fork 到协程:一次完整的操作系统并发编程实操
前端·程序员
四千岁37 分钟前
稀疏向量BM25Retriever不支持中文怎么办?jieba来帮忙
前端·javascript·后端
这是个栗子40 分钟前
【JS代码分析】前端鉴权基础:Token 的本地存储与状态重置实践
开发语言·前端·javascript
颜进强41 分钟前
14 - OpenSpec 老页面改造骨架:定位 + 增量 + 回归三件套
前端·后端·ai编程
做前端的娜娜子41 分钟前
async/await 错误处理:try...catch vs .catch() 完全指南
前端·面试·掘金·金石计划
半个落月1 小时前
React 性能优化入门:用 memo 避免无关的子组件重复渲染
前端·react.js