Cómo construir una aplicación React / Flux en Rails

Supongo que está interesado en configurar Rails de modo que pueda comenzar a seguir el tutorial de Facebook Flux Todo List (Flux | Arquitectura de aplicaciones para crear interfaces de usuario) y crear su aplicación en función de eso.

Tenía dificultades para seguir el tutorial proveniente del fondo de Rails, principalmente porque el tutorial:

  • No está basado en Rails, por lo que debe buscar pepitas de información de toda la web
  • Utiliza un despachador ingenuo, pero deberíamos usar el despachador oficial de Facebook

Escribí una publicación (Back To Front: Rails To Facebook’s Flux) para abordar esos problemas. Brevemente, incluí la implementación de Flux de Facebook en la cartera de activos de Rails con la ayuda del administrador de paquetes de nodos y browserify-rails.

La publicación asume 2 cosas, que te animo a pensar:
a. ¿Necesitas Flux?
si. ¿Cómo quieres adoptar Javascript en Rails?

a. Flujo
Puede renunciar a la pieza Flux, si su IU:

* Se basa solo en unos pocos datos que pertenecen juntos lógicamente, por lo tanto, una sola llamada AJAX es suficiente para obtenerlos
* No requiere que las interacciones / eventos del usuario se ejecuten en un orden determinado

Si tiene el tiempo y los recursos, aprenda y configure Flux. De lo contrario, puede poner en funcionamiento Flux fácilmente más tarde para las IU que lo necesiten. Comencé con solo ‘react-rails’, pero ahora lo estoy usando con Flux (mi publicación anterior habla un poco sobre esto).

si. Abrazando Javascript:
Si no se siente cómodo con Javascript, y prefiere apegarse a Gems, puede usar:

  1. La implementación de Flux de Facebook que ha sido Gemified (como lo señaló Legawiec)
  2. Otra implementación de Gem de la especificación de Flux de Facebook, como alt, redux, fluxxor, etc.
  3. Usar activos de rieles (como lo señala Legawiec)

No utilicé la opción 2, porque no estoy seguro del futuro y el soporte de tales implementaciones. La opción 3 básicamente permite a los desarrolladores de Rails usar cualquier biblioteca Javascript en Rails a través del Gemfile, por ejemplo,

# Gemfile
fuente ‘https://rails-assets.org’ do
joya ‘rails-assets-flux’
fin

Sin embargo, quería entender más las herramientas de Javascript, en lugar de hacer siempre todo Railsy, ​​y espero que la publicación ayude a las personas de Rails a hacer lo mismo.

Acabo de escribir un tutorial sobre cómo hacer esto: Usar React On Rails

Está basado en mi gema: shakacode / react_on_rails

Este tutorial configura una nueva aplicación Rails con React on Rails, que muestra Rails + React + Redux + Server Rendering + Heroku Deployment.

Puedes encontrar:

Todo este trabajo se basa en mi artículo original: Fast Rich Client Rails Development con Webpack y ES6 Transpiler

Definitivamente echa un vistazo a: shakacode / react-webpack-rails-tutorial

Puedes encontrar esto en vivo en http://www.reactrails.com

  • reactjs / react-rails
  • stefanRitter / flux-rails-assets

O puede usar Rails Assets pero react-rails es la forma preferida.