您的代码如下所示:
<>
<Sort />
<Products products={products} />
</>
在这种情况下,您必须在这两个容器中创建一个共享状态,如下所示:
1、可以使用简单的共享状态,比如:
function ContainerOfTwo(props) {
const [sharedState, setSharedState] = React.useState({});
return (
<>
<Sort setSharedState={setSharedState} sharedState={sharedState} />
<Products products={products} setSharedState={setSharedState} sharedState={sharedState} />
</>
)
}
2、使用原生的 React contextAPI 可能与 useReducer 一起使用。(这是一个更小更具体的状态管理。Small resource)
3、使用Redux。(对于更大、更强大的状态处理程序)
摘要:我会首先使用共享状态,如果这还不足以满足您的要求,请根据您的需要使用 contextAPI 或 redux。如果你做得很好,将状态保存到 contextAPI/redux 应该不是一个大问题。