解决React遍历每次渲染多个根元素导致无法为元素赋值key的问题

遍历时,存在多个根标签,如果使用<></>无法正确赋值key,代码如下:

js 复制代码
function App() {
	const list = [
		{ id:1, name:"小明" },
		{ id:2, name:"小田" },
		{ id:3, name:"小王" }
	]
	const listContent = list.map(item => (
		<>
			<li>{item.name}</li>
			<li>-----------</li>
		</>
	))
	return (
		<ul>{listContent}</ul>
	)
}

使用Fragment可以解决

js 复制代码
import { Fragment } from "react"

function App() {
	const list = [
		{ id:1, name:"小明" },
		{ id:2, name:"小田" },
		{ id:3, name:"小王" }
	]
	const listContent = list.map(item => (
		<Fragment key={item.id}>
			<li>{item.name}</li>
			<li>-----------</li>
		</Fragment>
	))
  
	return (
		<ul>{listContent}</ul>
	)
}
相关推荐
kyriewen16 分钟前
我看完这篇安全论文——AI推荐的npm包,92%是编出来的
前端·javascript·ai编程
心中有国也有家1 小时前
AtomGit Flutter 鸿蒙客户端:Canvas 绘制进阶-路径、渐变与混合模式
android·javascript·flutter·华为·harmonyos
小心我捶你啊2 小时前
数据采集和Web解锁不是一回事,从用途到规则区分
前端·爬虫·网络协议
hunterandroid2 小时前
[鸿蒙从零到一] ArkUI 基础组件实战:Text、Image、Button 与 TextInput
前端
fsssb2 小时前
Chromium 源码学习笔记(五):一次点击,在进入 JS 之前先经历了什么?
前端
hunterandroid2 小时前
WorkManager 可靠性实战:唯一任务、重试与幂等设计
android·前端
鹿目2 小时前
使用 Vant CLI 搭建 UI 组件库:从 H5 到小程序跨平台
前端·javascript
默_笙2 小时前
😭 我花了两小时找了一个数据结构 bug,才把"迷你 Cursor"跑起来,绝望(bushi)
前端·javascript
竹林8183 小时前
wagmi v2 监听合约事件踩坑记:从 `useContractEvent` 到 `watchContractEvent`,我重构了三版才搞定实时数据流
前端·javascript