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>
  );
}
相关推荐
斯~内克几秒前
基于Vue.js和PDF-Lib的条形码生成与批量打印方案
前端·vue.js·pdf
阴阳怪气乌托邦1 分钟前
别再啃OA代码了!低代码"搭积木"式搞数智化,我直接少写500行
前端·低代码
beelan5 分钟前
v-on的思考
前端
山河木马8 分钟前
前端学习C++之:.h(.hpp)与.cpp文件
前端·javascript·c++
用户9272472502198 分钟前
PHP + CSS + JS + JSON 数据采集与展示系统,支持伪静态
前端
努力只为躺平13 分钟前
一文搞懂 Promise 并发控制:批量执行 vs 最大并发数,实用场景全解析!
前端·javascript
李大玄15 分钟前
Google浏览器拓展工具 "GU"->google Utils
前端·javascript·github
爱编程的喵15 分钟前
从DOM0到事件委托:揭秘JavaScript事件机制的性能密码
前端·javascript·dom
蓝倾21 分钟前
京东批量获取商品SKU操作指南
前端·后端·api
JSLove27 分钟前
常见 npm 报错问题
前端·npm