2016-08-09 3 views
2

Я начал новый проект, в котором я бы хотел использовать React and Rails. Этот проект находится на небольшой стороне, и для этого потребуется некоторый базовый интерактивный интерфейс, а значит, и Реакт. Насколько я знаю, что есть два пути, я мог бы начать работу с этим:Начало работы с React and Rails

  • Использованием реагирующих рельсов камня и использовать встроенный вид помощника
  • Создание API Rails и React/Flux внешнего интерфейс приложения

У меня есть несколько вопросов. В каком-либо конкретном порядке:

  • Реагирует рельсы, как более простое решение, но с какими недостатками я столкнулся бы?
  • Я родом из Rails и Ember, поэтому решение Rails API + React FE делает архитектурный смысл для меня. Но с риском для ретрансляции я смущен тем, как нужно что-то делать. Прежде всего, как мне обрабатывать маршрутизацию? Я полагаю, что у меня не будет доступа к каким-либо помощникам маршрутных маршрутов, и вам нужно будет пройти пути в реактивные компоненты в качестве реквизита?

Заранее благодарен!

+0

Посмотрите на [этот учебник] (https://www.airpair.com/reactjs/posts/reactjs-a-guide-for-rails-developers) и этот [репо] (https: // github. com/raelgc/rails-react-tutorial) (который содержит версию кода JSX из учебника). –

ответ

2

Для небольшого проекта React-Rails, https://github.com/reactjs/react-rails, отлично, я использовал его в производстве в прошлом году на двух сайтах, которые получают около сотни тысяч посетителей в месяц, и у меня не было никаких проблем.

Если вы хотите использовать Redux, React-Router или Flux, не используйте React-Rails для маршрута API.

Мое правило заключается в том, что вы просто используете компоненты React, а затем используйте React-Rails.

Если вы делаете приложение Redux, Flux, просто создайте приложение для внешнего интерфейса.

1

Это зависит от объема вашего сервера и его команды. Если у вас много бизнес-логики, которую вы хотите сохранить в Rails, тогда вы можете захотеть, чтобы эта логика выполнялась на выделенном сервере Rails и отображалась как API.

Возможно, у вас есть сервер NodeJS, который ничего не делает, кроме сбора данных из API и рендеринга React для отправки пользователям. Единственное взаимодействие между реакциями и рельсами - через API как JSON. Эта базовая настройка будет очень хорошо масштабироваться и является довольно простой ментальной моделью.

Если проект становится больше, это означает, что вы можете использовать только JS-разработчиков только в JS, а Rails-разработчики работают только в Rails. Плюс, если вы хотите отойти от Rails или React позже, там нет дополнительной сложности.

ИЛИ

Если все разработчики будут React + Rails и проект немного мал для нескольких серверов, то я думаю, что с помощью реагирующих-рельсы, чтобы служить ваши страницы является прекрасным решением.

 Смежные вопросы

  • Нет связанных вопросов^_^