You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Next.js自定义服务器TSX文件JSX语法报错及Babel配置问题

Next.js自定义服务器处理TSX文件JSX语法报错解决方案

问题概述

  • 操作流程:创建Next.js应用 → 完成应用准备 → 使用处理器处理请求
  • 报错信息:
语法错误:当前未启用对实验性语法 'jsx' 的支持 (5:5):
  • 附加情况:
    • 自定义服务器在纯React项目中运行正常,但处理TSX文件时触发上述错误
    • 已添加Babel React预设,但问题未解决
    • 使用.babelrc文件执行next build可成功运行,改用.babelrc.js则失败,同时出现提示:
信息  - 正在使用来自 next/next-dekjs/.babelrc.js 的外部 babel 配置

解决方案

1. 修正.babelrc.js配置

确保配置中同时包含TypeScript和React预设,且优先使用Next.js官方的babel预设,示例配置如下:

module.exports = {
  presets: [
    'next/babel',
    '@babel/preset-typescript',
    ['@babel/preset-react', { runtime: 'automatic' }]
  ]
};

next/babel会整合Next.js所需的编译规则,必须放在最前面;@babel/preset-typescript用于解析TSX文件的类型语法,缺一不可。

2. 避免版本冲突

如果使用较新版本的Next.js,不要单独配置React和TypeScript预设,直接依赖next/babel即可,它已内置兼容的预设组合,减少版本不匹配问题。

3. 检查自定义服务器逻辑

自定义服务器不要手动添加TSX文件的编译规则,完全交由Next.js处理请求,避免干扰Next.js默认的编译流程。

4. 清除缓存重试

执行以下命令清除缓存和依赖,重新安装后构建:

rm -rf .next node_modules
npm install
next build

内容的提问来源于stack exchange,提问作者Stotra

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.13 16:33:14