I'm just starting on server side rendering a react 16 app using code splitting and dynamic import thanks to webpack 4 and react-loadable.
My question might sound stupid but there's something I don't quite get.
On the server side, I'm waiting that webpack has loaded all modules before spitting out the html to the client.
On the client side I have a kind of loading component rendered, before rendering the loaded component.
So basically the server renders the loaded component:
<div>loaded component</div>
And the client hydrates the loading component:
<div>loading...</div>
Obviously, The problem is that React complains after hydrate() because there is a miss match between server and client.
During a few seconds the client first renders
<div>loading...</div>
whereas server has rendered and sent to the client, the html of the loaded component.
Can someone enlighten me ? how does it work exactly ? How can I prevent a mismatch at first render when the component is being loaded ?