5
votes

When I use react router with Redirect, Link or NavLink eveything is fine. But I need a function that navigates me to a route programmatically.

That is what I want :

if(a == 1){
    this.context.history.push("/")
}
else {
    this.context.history.push("/home");
}

As you see context history is not exists in react router v4 any more. I cannot write withroute in js code for navigation. Can anyone say me how to navigate directly in js code?

Thanks

1
Did you try using React Router's browserHistory ?Lingaraju E V
I am using react-router-dom i mean v4. I cannot ser any solution with itCan PERK
Does this answer your question? Programmatically navigate using React routermajorobot

1 Answers

9
votes

The router will add a history to your props, you can use it like this:

this.props.history.push('/mypath')

Check this for more info: Navigating Programatically in React-Router v4