首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将前端与同构的Rails应用程序分离。

将前端与同构的Rails应用程序分离。
EN

Stack Overflow用户
提问于 2016-11-14 10:48:18
回答 2查看 1K关注 0票数 1

我们的web应用程序完全建立在Rails上。前端与后端紧密耦合。我们正处在一个阶段,我们希望逐渐开始将我们的前端和后端分开。我们希望以ReactJS的方式处理UI部分,并且希望遵循瀑布模型进行转换。

我们有两个选择:

  1. 使用名为反应轨的gem,并在React中构建新组件。慢慢开始将现有组件转换为反应组件。一旦我们将所有组件转换成,取出每个,分离完整的前端,并将其存放在其他地方。
  2. 将ReactJS寄存在其他地方。逐步开始转换每个组件以响应组件,将其移动到新的托管位置,并从Rails中删除它们。唯一的问题是,React组件将位于与Rails不同的位置。在应用程序中导航时,它可以给人一种导航到不同网站的感觉。

请分享您的经验,并指导我们在哪一条道路上前进。我们的最终目标是在ReactJS中拥有完整的前端,在Rails上拥有后端。它们通过API进行通信,完全消除了前端和后端之间的耦合。

谢谢

EN

回答 2

Stack Overflow用户

发布于 2016-11-15 04:03:08

只有在计划将rails保持在服务器呈现混合(不推荐)的情况下,才使用#1。如果不是,那么#2是最好的选择,从零开始使用完整的js解决方案。如果您创建了一个解耦的react组件库,并在现有的rails应用程序需要新视图时提供一个呈现管道,那么它就不必感觉像一个不同的站点。然后,当您已经转换了所有的视图组件,您可以包装应用程序逻辑,并使切换完全。

另一种选择是,您甚至不需要单独托管新的react组件,react组件可以经历一个单独的构建周期,然后缓存在现有服务器上,并根据需要从rails呈现。

票数 1
EN

Stack Overflow用户

发布于 2016-11-18 01:51:23

实际上,我不建议离开以Ruby为中心的系统。您可以使用http://ruby-hyperloop.io构建react.js组件。Hyperloop包括用于react的Ruby (HyperReact)和HyperMesh,它将使您完全访问React组件中的ActiveRecord模型。

最大的优点是您将在整个过程中处理一种语言,您不需要仅仅为了在客户端访问数据而构建API,而且可以使用现有的rails工具链(包括测试工具)。

有一个庞大的React.js组件库,可以与HyperReact进行良好的互操作。

如果出于任何原因,您认为走JS路线会更好,那么我建议您使用rails。它工作,支持良好,并处理预录制(一个非常重要的概念)。你也可以很容易地与国家预防机制和webpack相结合。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40586916

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档