Client-side routing doesn't work after SSR in React - reactjs

I've added server-side rendering to React app and it works when you go directly to those URLs, but Link components just change url in search bar and UI stays the same.
Does anyone know potential solution?
P.S.
I've updated to React and ReactDOM 16.0 and using hydrate() instead of render().

Update:
I just needed to pass main component to withRouter HOC.

Related

Patch react render function

I'm trying to create a Chrome Extension that changes the way a React app behaves. I want to patch a render function of a specific Component.
I thought that the best way would be to Patch the createElement function of React, and once I detect that the component that I want to change is being created, I will patch its render function with my own rendering.
The problem is that this application was built using webpack, and I don't have access to its React instance...
How can I get the React instance?
Thanks!

How to implement react-native-material-bottom-navigation with React Native Router Flux

I'm trying to implement react-native-material-bottom-navigation component with React Native Router Flux.
I've tried to use this component with RNRF but it doesn't work as I expect it should do it.
I placed the BottomNavigation in each screen but every time I click a tab it reloads everything. I think the BottomNavigation should be in the Router of my app but I've not figured out how to mix this components to work together.
I used to use the onPress inside the tab but it doesn't work and as timomeh says in an issue (#79) in the repository, I should use onTabChange instead onPress.
In the Bottom Navigation component docs I read an "usage" for React-navigation and I know RNRF is based on React-navigation but I've not achieved what I want.
Any help will be very appreciated.
Thank you!

React router v4 get user confirmation when leaving page

In older versions I could use setRouteLeaveHook within my component.
For example (SO): Detecting user leaving page
With react router v4 the logic has changed away from injecting the router itself into the components and I only found the following function on router v4:
BrowserRouter. getUserConfirmation
I am a little bit confused, why I should link the confirm behavior with the Router itself and not with a specific component!?
How can I place a confirm window, when leaving my component (linked to my current route), while being in a certain state? This seems to be not supported by the function above.
I think the Prompt component is what you're looking for. Just render it in the component you want to confirm navigation form, i.e. the same component you render in your <Route>.
react-router-navigation-prompt also does what you want: it is a more powerful <Prompt />.

Any cleaner way to trigger React Route change?

I am pretty new to React-Router, I wonder if there is a simple way to change Route, some concept like state in Angular UI Router. From the React Router official tutorial :
https://github.com/reactjs/react-router-tutorial/tree/master/lessons/12-navigating
My understanding is: I have to manually change the url to trigger route change.
What exactly are you trying to achieve? Did you take at look at the react-router Link component?
Perhaps the most used component in your app is Link. Its almost identical to the <a/> tag you're used to except that its aware of the Router it was rendered in.
React-Router Tutorial / Lesson 3: Navigating with Link

How do you do web routes in React and React Router?

I have all my /api routes that require auth going through node but I want to also expose and have web routes that I can do in react and decouple from the server.
Is there a way to have react (or react router) handle web routes?
Well, that's basically what React Router is for. It'll act upon changes to the URL and instantiate the component that you specify in your routes.
Without React Router, just treat it in the same way as you would any JavaScript project: listen for history changes or hash changes and re-render accordingly. But with React Router you have a solution that integrates with React and provides utility functions and hooks to make life easier.

Resources