react经验9:循环渲染的语法活用

在react中,循环渲染一般这么写

js 复制代码
<ul>
{
	list.map(item=>(
		<li key={item.key}>{item.value}</li>
	))
}
</ul>

react语法规定每个循环的标签需要加不重复的key,只能有一个根标签。

如果一次循环要输出多个标签怎么办?

js 复制代码
import {Fragment} from 'react'
<ul>
{
	list.map((item,index)=>(
		<Fragment key={item.key}>
			<li>{item.value}</li>
			{
				(index<list.length-1)&&(
					<li>&gt;</li>
				)
			}
		</Fragment>
	))
}
</ul>

这个例子是一次循环输出两个标签,key加在了Fragment上。

Fragment在react中表示空标签,用于向语法妥协的占位,平时可简写为"<></>"

在需要加key的时候要写完整名称。

相关推荐
计算机魔术师7 小时前
美国司法部正式站队 OpenAI,AI 训练的版权账要这么算了
前端
IT_陈寒7 小时前
React Hooks闭包陷阱差点让我加班到凌晨
前端·人工智能·后端
风骏时光牛马7 小时前
疑难Bug根因定位与问题复盘分析
前端
创新技术阁8 小时前
FastapiAdmin 系统日志体系与核心配置参数详解
前端·后端·fastapi
掘金酱8 小时前
【社区公告】签到与矿石奖励解耦说明
前端
promiseThen8 小时前
LWC Workflow:用 7 个 Cursor Skill 搭一条 AI 协作开发流水线
前端·ai编程
一个游离的指针8 小时前
函数管道:消除深度嵌套调用
前端·javascript
浅诺8 小时前
Nginx sub_filter 的“幽灵陷阱”:为什么页面能打开,懒加载的 JS 却全是 404?
前端
PBitW8 小时前
为什么vite中TS报错,可以继续运行?Webpack不行?
前端·webpack·typescript·vite
光影少年9 小时前
react navite手写 FlatList 优化配置
前端·react native·react.js