在 React 中,Render Props 是一种使用 function prop 在组件之间共享逻辑的技术。不使用子项或组合,而是将函数作为 prop 传递以动态呈现内容。这种方法适用于功能组件和钩子。
下面是如何使用功能组件实现 Render Props 的示例:
import React, { useState } from 'react'; // The component using render props const MouseTracker = ({ render }) => { const [mousePosition, setMousePosition] = useState({ x: 0, y: 0 }); const handleMouseMove = (event) => { setMousePosition({ x: event.clientX, y: event.clientY, }); }; return ({render(mousePosition)}); }; // Component that consumes the render props const App = () => { return (); }; export default App;Mouse Tracker
( Mouse Position: {x}, {y}
)}/>
此模式可以更灵活地决定如何根据 MouseTracker 组件内部的逻辑呈现内容。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3