如何模拟与历史相同的行为.push( "/Initial" );使用哈希路由器?



我不得不从修改

<Provider store={store}>
<I18nextProvider i18n={i18n}>
<BrowserRouter>
<Header />
<Main />
<Footer />
</BrowserRouter>
</I18nextProvider>
</Provider>

至:

<Provider store={store}>
<I18nextProvider i18n={i18n}>
<HashRouter>
<Header />
<Main />
<Footer />
</HashRouter>
</I18nextProvider>
</Provider>

我进行了更改,以避免刷新页面时出现404错误,并避免从电子邮件发送激活url时出现相同错误

现在,下面的代码不起作用

history.push("/Drawer");

我如何可以做同样的事情,但使用哈希路由器

试试这个:

// install react-router-dom
npm i react-router-dom
// import withRouter in your Component
import { withRouter } from 'react-router-dom';
// now you can use
// in class component
this.props.history.push('/Drawer');
// in function component
props.history.push('/Drawer');
// export your component
// without connect
export default withRouter(YourComponent);
// with connect
export default withRouter(connect(mapStateToProps, mapDispatchToProps)(YourComponent));

最新更新