[英]How to navigate with history.push in React
我可以將我的組件名稱添加到:例如: this.props.history.push(<Sample/>)
我有一個關於在此添加路徑的想法: this.props.history.push("/Sample")
。
或者如何將其導航到我的組件:
.catch((error) => {
console.log("error", error);
this.setState({
finishedStep: false,
});
this.props.history.push("<Sample/>");
});
如果完成的步驟是false
,我想將它導航到我的<Sample>
組件。
假設您已經為<Sample />
組件配置了相應的路由。
用react-router-dom
包裝你的組件
安裝 - react-router-dom
npm install --save react-router-dom
例子:
import { withRouter } from 'react-router-dom';
class YourComponent extends React.Component {
handleSubmit = (user) => {
saveUser(user).then(() =>
this.props.history.push('/dashboard')
)).catch((error) => {
console.log("error", error);
this.setState({
finishedStep: false,
});
this.props.history.push("/Sample");
})
}
render() {
return (
<div>
<Form onSubmit={this.handleSubmit} />
</div>
)
}
}
export default withRouter(YourComponent)
您可以在不使用react-router-dom
的情況下采取的另一種方法是。
render() {
if (this.state.finishedStep === false) {
return <Redirect to='/Sample' />
}
return (
<div>
<Form onSubmit={this.handleSubmit} />
</div>
)
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.