首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在React组件的两个标记之间使用函数是什么?

在React组件的两个标记之间使用函数是什么?
EN

Stack Overflow用户
提问于 2022-07-17 21:34:05
回答 2查看 38关注 0票数 1

例如,在@headless-ui/react库中,Listbox.Option可以通过以下方式传递其内部道具的值:

代码语言:javascript
复制
<Listbox.Option>
    {({ selected }) => (/* some component here */)}
</Listbox.Option>

这叫什么,如何编写实现类似功能的代码?

EN

回答 2

Stack Overflow用户

发布于 2022-07-17 21:37:08

这叫渲染支柱

通过使用children组件作为函数,您可以轻松地制作自己的呈现道具。

代码语言:javascript
复制
function MyComponent({ children }) {
  // ...
  return <div>{children(...)}</div>
}

<MyComponent>
  {(...) => ...}
</MyComponent>
票数 3
EN

Stack Overflow用户

发布于 2022-07-17 21:41:48

这个模式的命名非常具有描述性:儿童功能组件。这是渲染道具的变体。

编写以这种方式工作的组件可以简单到字面上调用传入的children道具(例如children()),但建议至少运行React.Children.only(children)()以确保children不是数组。

这里的React.Children.only文档,供参考。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73015523

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档