【发布时间】:2019-05-04 07:27:29
【问题描述】:
我知道如何将状态传递给重定向组件,如下所示。
<Redirect
to={{
pathname: "/login",
state: { isLoggedIn: this.state.isLoggedIn }
}}
/>
但是,我找不到如何将方法传递给重定向组件的方法。我想要的是传递一个方法(handleLogin)来重定向组件,如下所示。你能帮忙吗?
<Redirect
to={{
pathname: "/login",
state: { handleLogin: this.handleLogin }
}}
/>
【问题讨论】:
-
如果您对像 redux 这样更复杂的状态管理系统不感兴趣,您愿意使用 React Context API。
-
我们不能在状态中传递一个函数,但是你对handleLogin的要求是什么,也许这里的人可以建议你一个处理它的好方法
-
非常感谢您的回答。如您所料,我想使用该功能更改父组件的某些状态。有没有办法做到这一点?很简单,handleLogin 可以是这样的。 handleLogin() { this.setState(state => ({ isLoggedIn: true })); }
-
@AnnaLee 你有没有想过如何使用
传递一个方法?