gpt4 book ai didi

javascript - 在代码沙箱内路由,由于 withRouter 而失败

转载 作者:行者123 更新时间:2023-11-28 02:22:53 31 4
gpt4 key购买 nike

当我点击提交按钮时,我需要重定向到这个页面 pageOne,所以我用谷歌搜索并找到了一个 react 路由器并使用了这一行 this.props.history.push("/anotherPage"); ,但它没有重定向。它抛出一个错误 Invariant failed: You should not use <Route> outside a <Router>你能告诉我如何解决它吗?在下面提供我的代码片段和沙箱。

https://codesandbox.io/s/material-demo-n9o7s

<!-- language-all: lang-or-tag-here -->

anotherPage = () => {
console.log("redictToStepper --->");
this.props.history.push("/anotherPage");
};

render() {
const { classes } = this.props;
const { checkBoxvalues } = this.state;

return (
<div className={classes.root}>increase when I hit submit button</div>
);
}

export default withRouter(withStyles(styles)(RadioButtonsGroup));

最佳答案

您需要使用 BrowserRouter 包装您的最外层组件,这样它将为其子组件提供所需的 Prop 和行为。

在您的 index.js 上将渲染替换为:


import { BrowserRouter } from "react-router-dom";

ReactDOM.render(
<BrowserRouter>
<Route exact path="/" component={Demo} />
<Route exact path="/anotherPage" component={PageOne} />
</BrowserRouter>, document.querySelector('#root'));

要在每个路由中渲染您的组件,请引用 react router documentation .

关于javascript - 在代码沙箱内路由,由于 withRouter 而失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56383755/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com