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

如何解决React报错Module build failed (babel-loader)问题

错误根因

所有报错都是一处拼写错误导致的连锁反应:第二行导入依赖时把ES模块导入关键字from错写成了form,解析器无法识别这个非法语法,才会抛出缺分号、语法仅支持TS文件这类误导性提示。

修复步骤
  1. 先修正拼写错误,把第二行的form改回from
  2. 匹配你本地安装的React版本使用对应渲染API,不同版本API存在差异,避免修正拼写后又碰到版本兼容问题
可直接运行的参考代码

React 18 及以上版本(当前create-react-app默认创建的版本)

import React from "react";
import ReactDOM from "react-dom/client";

const element = <h1>Hello World</h1>;
const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(element);

React 17 及更早版本

import React from "react";
import ReactDOM from "react-dom";

const element = <h1>Hello World</h1>;
ReactDOM.render(element, document.getElementById('root'));
额外注意事项
  • 如果拼写改完还是报JSX语法错误,检查项目的babel配置有没有引入@babel/preset-react预设,JSX语法必须依赖这个预设才能被正常转译
  • 存放JSX代码的文件建议统一使用.jsx后缀,如果坚持用.js后缀,要提前配置构建工具支持.js文件内的JSX语法解析
  • 不需要因为'import ... =' can only be used in TypeScript files这个提示把文件改成TS格式,拼写修正后这个提示会自动消失,它本质是解析器识别错语法后给出的误判
  • 导入ReactDOM时建议遵循官方规范将DOM三个字母大写,虽然自定义变量名写ReactDom也能正常运行,但不符合社区通用写法,后续协作容易引发混淆

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.30 13:45:30