So ist die Umsetzung des <Link />
onClick, die den Router Navigation Griffe ist einfach:Reagieren Router definieren meine eigene Link-
const { history } = this.context.router;
history.push(to);
, die aus dem github repo
in meinem application es sollte also gezogen wird funktionieren, weil der Kontext wird von der Komponente <Router>
rechts weitergegeben?
class App extends React.Component {
constructor() {
super(...arguments);
}
render() {
const home =() => (<div>Home</div>);
const about =() => (<div>About</div>);
const { history } = this.context.router;
console.log("History", history);
return (
<div>
<ul>
<li><Link to="/">Home</Link></li>
<li><Link to="/about">About</Link></li>
</ul>
<Route exact path="/" component={home} />
<Route path="/about" component={about} />
</div>
)
}
}
ReactDOM.render(
<Router>
<App />
</Router>,
document.getElementById('main')
);
Aber wie Sie in der Konsolenausgabe, die Geschichte Objekt nicht definiert ist sehen ....
mit 'withRouter' – azium