When using react-rails for an internationalized app it makes a lot of sense to use i18n-js for translations, so that you can reuse the the strings from your rails app's .yml files (and all the tooling & services that exist around that).
When you use the prerender feature of react-rails you face 2 problems:
- The first is that
translation.js&i18n.jsfrom i18n-js need to be loaded inside the server-side JS prerendering processes, which is achieved by loading them inside thecomponents.js. - The second problem is the server processes need to be aware of the current
localeof each HTTP request. This is done by adding a custom renderer and using thebefore_renderhook to configure i18n-js accordingly for each render call.
