当用户刷新当前页面时,react将其重定向到主页。
如何防止这种情况?强制刷新页面的网址不应更改。我也尝试过HashRouter,但是没有运气。
有人可以帮我弄清楚我在做什么错吗?
我正在使用:
"react": "^16.11.0",
"react-dom": "^16.12.0",
"react-router-dom": "^5.1.2",
我的index.js文件:
ReactDOM.render(<App />, document.getElementById('root'));
eactDOM.render(<App />, document.getElementById('root'));
App.js
import { BrowserRouter as Router } from 'react-router-dom';
import BaseRouter from './routes';
import CustomLayout from './containers/Layout';
import { Provider } from "react-redux";
import store from "./store";
class App extends Component {
render() {
return (
<React.Fragment>
<Provider store={store}>
<Router>
<CustomLayout {...this.props}>
<BaseRouter />
</CustomLayout>
</Router>
</Provider>
</React.Fragment>
);
}
}
routes.js文件的相关部分:
<React.Fragment>
{!token ? <Redirect to='/login/' /> :
<Switch>
<Route exact path='/' component={HomePage} />
<Route exact path='/customers/' component={Customers} />
<Route exact path='/some-route/' component={someRoute} />
<Route component={Page404} />`enter code here`
</Switch>
}
</React.Fragment>`enter code here`
答案 0 :(得分:0)
这是官方文档的语法。
<Switch>
<Route exact path='/'>
<HomePage />
</Route>
<Route exact path='/customers'>
<Customers />
</Route>
<Route exact path='/some-route'>
<SomeRoute />
</Route>
</Switch>