Намагаючись зрозуміти, як я можу повернутися на попередню сторінку. я використовую[react-router-v4][1]
Це код, який я налаштував на своїй першій цільовій сторінці:
<Router>
<div>
<Link to="/"><div className="routerStyle"><Glyphicon glyph="home" /></div></Link>
<Route exact path="/" component={Page1}/>
<Route path="/Page2" component={Page2}/>
<Route path="/Page3" component={Page3}/>
</div>
</Router>
Для пересилання на наступні сторінки я просто роблю:
this.props.history.push('/Page2');
Однак як я можу повернутися на попередню сторінку? Перепробував кілька речей, як зазначено нижче, але не пощастило: 1.this.props.history.goBack();
Видає помилку:
TypeError: null не є об'єктом (оцінюючи 'this.props')
this.context.router.goBack();
Видає помилку:
Помилка типу: null не є об'єктом (оцінюючи 'this.context')
this.props.history.push('/');
Видає помилку:
TypeError: null не є об'єктом (оцінюючи 'this.props')
Розміщення Page1
коду тут нижче:
import React, {Component} from 'react';
import {Button} from 'react-bootstrap';
class Page1 extends Component {
constructor(props) {
super(props);
this.handleNext = this.handleNext.bind(this);
}
handleNext() {
this.props.history.push('/page2');
}
handleBack() {
this.props.history.push('/');
}
/*
* Main render method of this class
*/
render() {
return (
<div>
{/* some component code */}
<div className="navigationButtonsLeft">
<Button onClick={this.handleBack} bsStyle="success">< Back</Button>
</div>
<div className="navigationButtonsRight">
<Button onClick={this.handleNext} bsStyle="success">Next ></Button>
</div>
</div>
);
}
export default Page1;