【发布时间】:2020-05-18 10:34:12
【问题描述】:
我已经尝试了所有可能的版本,但 goBack() 按钮不起作用。 不知道我做错了什么,但我正在遵循这个解决方案:
无论如何,这是我正在尝试的代码,我觉得与 HashRouter 有一些关系。 另外如何将按钮放在导航栏中而不是在应用程序中调用它?
import React from 'react';
import { HashRouter, Route, withRouter } from 'react-router-dom';
import Home from "./components/Home";
import Navbar from "./components/Navbar";
import store from './store'
import PrivateRoute from './components/auth/PrivateRoute'
class App extends React.Component {
constructor(props){
super(props);
this.goBack = this.goBack.bind(this); // i think you are missing this
}
componentDidMount(){
store.dispatch(loadUser())
}
goBack(){
this.props.history.goBack();
}
render(){
return (
<Provider store={store}>
<HashRouter basename="/">
<Navbar />
<button onClick={this.goBack()}>Go Back</button>
<Route exact path="/" component={Home}/>
<PrivateRoute path="/aeons" component={AeonsList} />
</HashRouter>
</Provider>
【问题讨论】:
标签: reactjs react-router