• JSX 的语法中,明确要求,仅能有一个根标签
  • 因此,我们往往使用 div 去包裹整个组件标签
  • 但这样,会在页面上增加许多无用的 div,并且增加页面的标签层级
  • 可以用以下两种方式解决
  • 第一种:使用 Fragment 标签,它会在编译时被忽略
import {Fragment} from 'react'

...
<Fragment>
	<p>test</p>
	<p>test</p>
</Fragment>
...
  • 第二种:使用 空标签,这样也不会增加无用的 div 标签

...
<>
	<p>test</p>
	<p>test</p>
</>
...
  • 二者的区别,空标签无法接收任何属性,Fragment 仅能接收 key 属性,当存在循环遍历时,使用 Fragment 可以指定唯一的 key
Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐