javascript - 使用 Component/Element 内的参数反应函数
问题描述
我刚刚使用了一个名为的库react-axios
,其中以以下方式在组件内部提供了一个函数:
<Get url="/api/user" params={{id: "12345"}}>
{(parameters) => {
//some callback with the parameters
}}
</Get>
由于我以前从未见过这种语法并且总是使用道具传递函数,所以我很好奇:
- 这种类型的函数规范在 React 中是如何调用的?
- 一个组件怎么可以这样实现?
- 它也适用于功能组件吗?
解决方案
- 这种类型的函数规范在 React 中是如何调用的?
您在问题中建议的模式称为渲染道具模式
- 一个组件怎么可以这样实现?
一个非常基本的实现可能如下所示
function Get(props) {
const [params, setParams] = useState({});
...
return (
<div>{props.children(params)}</div>
)
}
- 它也适用于功能组件吗?
是的,它可以为功能组件和类组件编写
推荐阅读
- github - 搜索组织在 github 中创建的存储库
- google-cloud-platform - 如何使用 GitLab 存储库作为谷歌云负载均衡器的后端?
- javascript - CSS 和 JS 文件不会加载到 node.js 服务器上
- linux - 尝试通过 terraform 创建数字海滴时出错
- node.js - 在 openwrt 中安装 node-hid
- reactjs - 如何使用 webpack 加载 json 文件的文件夹?[single-spa] [react js]
- postgresql - 最近有人在 POSTGRESQL 13 中使用 SERAIL 类型而不是 SEQUENCE 吗?
- html - 如何在 html 中格式化较长的句子而不是单词/行?
- python - 队列不继续?
- sql - SQL 合并 Null 列