【发布时间】:2019-01-19 11:03:15
【问题描述】:
几秒钟后,我尝试将用户从一个组件重定向到另一个组件。
用户登陆一个页面,几秒钟后他会自动重定向到另一个页面。 我想在一个动作中重定向,但我不确定这是否是最好的主意(如果你有更简单的方法,我很感兴趣)。
到目前为止我的代码:
一个基本组件:
import React, { Component } from "react";
import { connect } from "react-redux";
import { withRouter } from "react-router-dom";
import { redirectToProfile } from "../../actions/searchActions";
class Search extends Component {
componentDidMount() {
setTimeout(this.props.redirectToProfile(this.props.history), 3000);
}
render() {
return (
<div>
<h1>search page</h1>
</div>
);
}
}
export default connect(
null,
{ redirectToProfile }
)(withRouter(Search));
和行动:
export const redirectToProfile = history => {
history.push("/");
};
到目前为止,我收到一条错误消息:
动作必须是普通对象。使用自定义中间件进行异步操作。
经过一些研究,我发现有些人使用中间件 thunk 解决了问题,但我已经在使用它,所以我不知道该怎么做。 感谢您的帮助。
【问题讨论】:
标签: reactjs redux redux-thunk