Would be possible to serve compiled React Jsx views (rendered server side like Razor Views with the Razor Engine) to speedup the client start up time? Something similar to this
JSX views should only be used during development, you should use a build task to compile the JSX views and minify the output along with optimizing the rest of your Web App.
This is built into the ServiceStackVS React App Template.
Thanks Demis,
the example template precompile the Jsx views in javascript at compilation step and includes the javascript that then renders the view on the client (like a normal SPA).
What I was intending was the possibility to use React to generate html on the server like a normal view engine (ie: Razor Views) and send it to the client (this is for SEO, javascript disabled, startup performance and same view engine).
Many React shops are using it for both the client and the server pre rendered on the server with Node.
IMO would only make sense to implement isomorphic server side javascript rendering if you’re using node. Just had a look at ReactJS.NET source code, it’s hosting multiple V8 engines (on each Thread) and calls into V8 to execute the JavaScript to do the transformation. Seems like it would be very inefficient from .NET, whilst adding a lot of complexity and managed and unmanaged dependencies.
The nice thing is it looks like React.Core doesn’t look like it’s coupled to any web framework so would just need to port the ASP.NET MVC Helpers to reference ServiceStack Types instead. If you want you can add it as a feature request and we can look into it if there’s demand for it.