Skip to content
This repository has been archived by the owner on Feb 1, 2022. It is now read-only.

Allow to use React.renderToString instead of React.renderToStaticMarkup to allow isomorphic React use? #31

Open
sbichenko opened this issue May 9, 2015 · 6 comments

Comments

@sbichenko
Copy link

Is there anything wrong with making this a configurable option? For example, this fork does that: https://github.com/AndrewGuenther/express-react-views/commit/d9fb082f2b073534ffa68a3ec64de6c7139cf25c

The fact that this wasn't made configurable makes me thinks that there's more to this problem. I'm new to React, so sorry if I'm asking something obvious.

@zpao
Copy link
Member

zpao commented May 16, 2015

There is more too it, see #11 and #15 for some more discussion. It's not off the table just haven't seen a good solution for actually being client-mountable that I'm happy with.

@vikeen
Copy link
Contributor

vikeen commented Sep 26, 2015

@zpao Has anything ever come from these talks. Are there good solutions now for a simple isomorphic react architecture? The only example I was able to find that I could produce workable solutions from was https://github.com/mhart/react-server-example. While this worked for me and I appreciate the example / effort; I can't code a project like this. Do you or anyone else have insights on how I can make this easier or if there are better avenues now?

Thanks

@zpao
Copy link
Member

zpao commented Sep 28, 2015

No, nothing has really come of it.

https://github.com/reactjs/express-react-views/tree/master/examples/dynamic exists which was an interesting solution to the problem. That came in #17 (and has some discussions about the tradeoffs).

There should be a bunch of isomorphic solutions out there, maybe even some using express.

I'm definitely open to making changes here but I haven't seen anybody make a compelling case about how their solution actually works.

@vikeen
Copy link
Contributor

vikeen commented Sep 28, 2015

@zpao Thanks for the response. I hadn't done enough research on the topic when I posted here. I have been able to find a ton of solutions for isomorphic solutions. Mostly through react-europe 2015 video on youtube. It has taken some time for me to grasp the concepts. It's mostly challenging for me because many of the solutions are adding new technologies that I'm unfamiliar with (babel, es6, webpack, redux, react-router, flux, fluxible, etc..).

Thank you for the response back though. The example of you provided is a good reference for the main concepts of what's happening in the client / server shared architecture. The readme had some 404 links though. I'll get PR for this.

@vikeen
Copy link
Contributor

vikeen commented Sep 28, 2015

Reference #50 for this fix. Let me know if you don't want the pr into master.

@wesleytodd
Copy link

Maybe this is not the place to mention this, but we have been using a pattern in a bunch of our express apps that I just bundled up into a module. It solves this problem when you are also using a front-end router that uses middleware like express. Maybe some solution like this would work here?

https://github.com/wesleytodd/react-express-middleware

Thoughts? Feedback?

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants