gpt4 book ai didi

reactjs - react 路由器中 location.state 的类型或接口(interface)

转载 作者:行者123 更新时间:2023-12-04 11:50:35 26 4
gpt4 key购买 nike

在一个组件中,有一个 <Link> (来自 react-router-dom)在 state 属性中传递一个对象。

另一个名为 ReceiverComponent 的组件正在正确接收该对象。但是,下面的代码提示消息:

Type 'PoorMansUnknown' is not assignable to type 'locationStateProps'. Type 'undefined' is not assignable to type 'locationStateProps'.ts(2322)


type locationStateProps = {
name: string;
}

function ReceiverComponent() {
const location = useLocation();
const myState: locationStateProps = location.state;
return (
<div>
{myState.name}
</div>
);
}

我需要以某种方式为状态提供一种类型,而不会出现此错误。如何进行?

最佳答案

有一个thread在 Github 上打开有关此问题的信息。

我实现了线程上提到的这个解决方案并且它起作用了。

interface Props extends RouteComponentProps<
{ myParamProp?: string }, // props.match.params.myParamProp
any, // history
{ myStateProp?: string }, // props.location.state.myStateProp
> {
myNormalProp: boolean;
}

关于reactjs - react 路由器中 location.state 的类型或接口(interface),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60586697/

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