React 之 内置标签<Fragment> (<>...</>) (十一)

通常使用 <>...</> 代替,它们都允许你在不添加额外节点的情况下将子元素组合。相当于vue的内置标签<template/>

1. 返回多个元素

javascript 复制代码
<>
  <OneChild />
  <AnotherChild />
</>

2. 分配多个元素给一个变量

和其他元素一样,你可以将 Fragment 元素分配给变量,作为 props 传递。

javascript 复制代码
function CloseDialog() {
  const buttons = (
    <>
      <OKButton />
      <CancelButton />
    </>
  );
  return (
    <AlertDialog buttons={buttons}>
      Are you sure you want to leave this page?
    </AlertDialog>
  );
}

3. 组合文本与组件

可以使用 Fragment 将文本与组件组合在一起。

javascript 复制代码
function DateRangePicker({ start, end }) {
  return (
    <>
      From
      <DatePicker date={start} />
      to
      <DatePicker date={end} />
    </>
  );
}

4. 渲染 Fragment 列表

需要为每一个元素分配一个 key时,需要显式地表示为 Fragment,而不是使用简写语法 <></>

javascript 复制代码
function Blog() {
  return posts.map(post =>
    <Fragment key={post.id}>
      <PostTitle title={post.title} />
      <PostBody body={post.body} />
    </Fragment>
  );
}
相关推荐
小酒星小杜6 分钟前
在AI时代下,技术人应该学会构建自己的反Demo地狱系统
前端·vue.js·ai编程
kirito707726 分钟前
前端项目架构(基于 monorepo)
前端
去哪儿技术沙龙31 分钟前
Qunar酒店搜索排序模型的演进
前端·架构·操作系统
重铸码农荣光31 分钟前
TypeScript:JavaScript 的“防坑装甲”,写代码不再靠玄学!
前端·react.js·typescript
南山安33 分钟前
TypeScript:更加安全规范的JavaScript
react.js·typescript·代码规范
用户6000718191034 分钟前
【翻译】构建类型安全的复合组件
前端
掘金安东尼1 小时前
向大家介绍《开发者博主联盟》🚀
前端·程序员·github
火车叼位1 小时前
div滚动条是否存在?用 v-scroll-detect 增加一个辅助class
前端
H_z_q24011 小时前
web前端(HTML)银行汇款单的制作
前端·html
小宇的天下1 小时前
Synopsys Technology File and Routing Rules Reference Manual (1)
java·服务器·前端