javascript - How to make React-Router to render an interactive output from the server? -


i'm trying use react-router right now, express.js. final objective is:

  • when url hits server, use server-side rendering render output.
  • once in client, future clicks on link component cause react-router render on client (no need full round trip server).

what got far:

  • make server rendering this.
  • make link component work properly, when render on client.

my problem:

  • once render on server, ouput not interactive. mean, no event handler associated dom. that's comprehensible. i'm looking for, though, way blend server , client rendering. mean, server renders output somehow gets interactive in client. if this, i'll able use link on client , fulfill needs.

if call react.render(component, element) on client element points dom node contains server-rendered react markup , component instantiated same props on server (and assuming props/state matches way down), react transparently upgrade static markup interactive react app.

see this jsfiddle example demonstrates technique: http://jsfiddle.net/binarymuse/ddvdppeg/ (note there 1 second delay before markup upgraded interactive app, demonstration purposes).