Logo
Section 1 / 5

简介

让我们看看如何通过将函数作为属性传递来在组件之间共享代码。

导入

简介

让我们看看如何通过将函数作为属性传递来在组件之间共享代码。

什么是 FaaC 和渲染属性(render props)?

**子组件为函数**(FaaC)和**渲染属性**(render props)在官方 React 文档中被分别讨论。 它们很相似,但略有不同。因此我们在这里一并讨论。不过首先,它们到底是什么?

子组件为函数(也称为 函数作为子元素)和渲染属性是两种设计模式,允许你将业务逻辑或应用逻辑封装在一个外层组件中,类似于高阶组件(HOC)。

Thinking
Thinking

与高阶组件不同的是,FaaC 会调用一个函数,并将相关数据作为参数传入(而不是返回一个新的、通过 props 接收数据的组件)。在 函数作为子元素 模式中,该函数以目标组件的子元素形式传入(即 this.props.children)。而 渲染属性 模式则是将该函数作为一个名为 render(或其他名称)的 prop 来传递。

高阶组件

作为子元素的函数