Next.js新建项目启动报jsxDEV is not a function错误,无提示找不到解法
jsxDEV is not a function 报错解决方案 该报错核心成因为依赖版本错位、转译配置冲突,可按以下步骤逐次排查解决:
- 核心触发逻辑:
jsxDEV是 React 18.2.0+ 版本提供的开发环境专用JSX转译方法,当Next项目拉取的React版本不匹配、转译配置被篡改时,就会出现模块导出不存在的类型错误。
1. 清理项目本地缓存与残留依赖
先终止正在运行的开发服务,在项目根目录执行清理命令:
# 删除已安装的依赖目录 rm -rf node_modules # 删除Next的本地构建缓存 rm -rf .next # 删除包管理器生成的版本锁文件(根据实际使用的包管理器保留对应清理项即可) rm -rf package-lock.json yarn.lock pnpm-lock.yaml
2. 对齐React与Next的兼容版本
Next.js 13及以上版本要求最低React版本为18.2.0,版本不满足时直接触发模块导出异常。
打开项目根目录的package.json,手动对齐匹配的版本:
{ "dependencies": { "next": "当前安装的Next稳定版本", "react": "^18.2.0", "react-dom": "^18.2.0" }, "devDependencies": { "@types/react": "^18.2.0", "@types/react-dom": "^18.2.0" } }
3. 排查自定义转译配置冲突
Next.js 13+ 默认使用内置SWC完成JSX转译,若手动在项目根目录添加了.babelrc、babel.config.json这类自定义Babel配置,会覆盖默认的jsxDEV模块导入逻辑,直接触发该报错,这类情况直接删除对应的Babel配置文件即可。
4. 重新安装依赖并启动服务
安装依赖时不要添加--force、--legacy-peer-deps这类强制参数,避免拉取版本错位的依赖包,执行对应包管理器的常规安装命令:
# npm npm install # pnpm pnpm install # yarn yarn install
安装完成后启动开发服务:
npm run dev
额外排查项:若本地全局安装的Next CLI工具版本过旧,可升级全局CLI到最新稳定版后再初始化项目,避免拉取错位的依赖版本。
内容的提问来源于stack exchange,提问作者Willian Ferreira
相关产品推荐
相关产品推荐

