【发布时间】:2018-03-27 05:29:15
【问题描述】:
如果我总是重定向到应用内路由,react-router-dom (v4) 中的Redirect 组件和this.props.history.push() 有什么区别?
例如假设我想在 URL 中添加一个用户给定的标题并从 /foo/123 重定向到 /foo/123/some-title(两者都使用相同的路由/组件呈现)。
我看到Redirect 的某些用法传入状态。这会在哪里结束?
在状态中指定要重定向到的位置是一种反模式吗?为什么示例代码看起来不像这样:
save() {
this.setState({ redir: '/new-path'; });
}
...
render () {
if (this.state.redir) {
return <Redirect to={this.state.redir} />;
}
...
}
【问题讨论】:
标签: reactjs redirect react-router