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

本地运行React井字棋教程代码遇<>语法错误如何解决?

React井字棋代码本地运行语法错误解决方案

问题描述

我跟随React官方井字棋教程学习,将教程示例代码从CodeSandbox导出到本地后,执行npm start时出现语法错误,提示<>处存在Unexpected token。

复现步骤

  • 在教程的「此时你的代码应大致如下」环节,点击含1-9数字表格示例代码右上角的Fork按钮;
  • 点击CodeSandbox左上角按钮,依次进入File→Export to Zip,下载代码压缩包;
  • 解压压缩包后,在项目根目录依次执行npm install和npm start;
  • 出现如下错误信息:

./src/App.js
Syntax error: Unexpected token (3:5)

1 | export default function Board() {
2 | return (

3 | <>
| ^
4 |


5 |
6 |

版本信息

  • Node.js: v18.12.1
  • npm: 8.19.2
  • 项目根目录执行npm view react version结果:18.2.0

解决方案

这个错误是因为本地构建工具不支持React的Fragment短语法(<>),有两种解决方法:

方法1:替换短语法为完整Fragment语法

把代码里的<>替换为<React.Fragment>,并确保在文件顶部导入React:

import React from 'react';

export default function Board() {
  return (
    <React.Fragment>
      <div className="board-row">
        <button className="square">1</button>
        <button className="square">2</button>
        {/* 剩余代码保持不变 */}
      </div>
    </React.Fragment>
  );
}

方法2:升级或配置构建工具支持短语法

如果使用Create React App,确保版本在v2.0.0及以上(默认支持Fragment短语法),可通过以下命令升级:

npm install --save react-scripts@latest

如果是自定义Webpack+Babel配置,需确保安装@babel/plugin-transform-react-jsx插件,或启用@babel/preset-react预设(默认支持该语法)。


内容的提问来源于stack exchange,提问作者toku-sa-n

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 20:40:29