gpt4 book ai didi

javascript - 在 react-router v6 的 mapStateToProps 中使用 urlParams

转载 作者:行者123 更新时间:2023-12-05 05:52:42 24 4
gpt4 key购买 nike

我的 mapStateToProps 需要组件 urlParams 来选择 redux 存储的一部分,我尝试使用但我不断收到错误:“TypeError: ownProps.useParams is not a function” my code

最佳答案

如果我正确理解了您的问题/代码,那么您正在尝试使用 collectionId 路由匹配参数作为 selectCollection 选择器的键。

react-router-dom v6 中,不再有路由属性,因此渲染组件需要使用 React hooks 来访问 navigatelocation,和匹配/params。您可以创建自定义 withRouter HOC 以将匹配参数作为 prop 注入(inject),并可供 connect HOC 访问,但是完全没有必要使用两个高阶组件。

我建议在组件中使用钩子(Hook)。

import { useSelector } from 'react-redux';
import { useParams } from 'react-router-dom';

const CollectionPage = () => {
const { collectionId } = useParams();
const collection = useSelector(selectCollection(collectionId));

return (
... JSX ...
);
};

export default CollectionPage;

关于javascript - 在 react-router v6 的 mapStateToProps 中使用 urlParams,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70059188/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com