【发布时间】:2021-04-01 20:52:48
【问题描述】:
我必须使用 Link 将函数传递给另一个组件
testFavorite=()=>{
console.log("work")
}
<Link
to={{
pathname: '/popular',
state:{
testFavorite: this.testFavorite
}
}}>
Popular</Link>
这就是我调用函数的方式
this.props.location.state.testFavorite();
这给了我这个错误
DataCloneError: 无法在“历史”上执行“pushState”:() => 无法克隆 testFavorite()。
【问题讨论】:
-
此代码不足以澄清问题。您需要提供更多信息,可能是您如何为流行路径声明
<Route>,它是组件。您可以考虑添加一个带有重现错误的沙箱。 -
你可以在这里找到代码codesandbox.io/s/…
-
此外,下面是重点问题 function loadUser(){ console.log("load")} 执行后给我一个错误
-
好像状态被序列化了,函数无法序列化:related question
-
嘿@UmarJaved,你得到这个解决方案了吗?我有同样的问题。请分享解决方案。
标签: reactjs react-router react-router-v4 react-props