片段在React 16.2中给出了意外的令牌错误

Dog*_*Dog 18 reactjs react-16

我有以下组件呈现一系列组件.但是,我下载了React 16.2并尝试使用片段而不是div,但是我收到以下错误:

Error in ./src/containers/answers.js
Syntax error: Unexpected token (24:5)

  22 |     
  23 | return (
> 24 |     <>
     |      ^
  25 |       {AnswersCard}
  26 |     </>
  27 |    )
Run Code Online (Sandbox Code Playgroud)

当片段应该能够替换React 16.2中的div时,为什么会出现此错误?

  question ? 
    AnswersCard = ( question.answers.sort(function(a,b) { return (a.count < b.count) ? 1 : ((b.count > a.count) ? -1 : 0)} 
    ).map(answer =>  
    <Answer key={answer.id} answer={answer} questionId={question.id} />
    )) : AnswersCard = ( <p>Loading...</p> )

return (
    <>
      {AnswersCard}
    </>
   )
  }
}
Run Code Online (Sandbox Code Playgroud)

Shu*_*tri 23

按照该文件,语法<></>不是所有工具的支持,他们鼓励您使用<React.Fragment>,而不是

请查看支持片段语法的文档

  • 2023 年,本教程仍然是一个问题:https://react.dev/learn/tutorial-tic-tac-toe#setup-for-the-tutorial (11认同)
  • 没错,新的 `XML`/`JSX` 语法片段,因此 `&lt;&gt;&lt;/&gt;` 需要与 babel 版本 **7** 一起运行。 (2认同)
  • 这仍然是 Next.js + TSX 中的一个问题 (2认同)