在现有的Rails应用程序中嵌入React App

时间:2017-03-09 02:57:29

标签: javascript ruby-on-rails reactjs

我工作的公司目前正在尝试更新版本的前端。一个功能是一个独立的React应用程序,可以提供Rails API。我们希望应用程序的一部分(React部分)使用react路由器而不是rails路由器。

我们有什么方法可以将react应用程序作为应用程序的一部分嵌入,同时仍然保持会话并能够使用rails路由器作为rails组件和反应组件的反应路由器。 / p>

2 个答案:

答案 0 :(得分:1)

是的,这是一项非常常见的事情,特别是在迁移到更现代的客户端重型应用程序时。

就像你说的那样,你将使用rails来通过cookie处理会话管理,路由将是棘手的部分。但是,您可以选择rails来提供单个页面,并让react-router处理其余页面。这取决于auth see等内容。

一旦html页面被渲染,javascript将加载,react-router将处理剩余的路由。这意味着您将无法通知客户端路由更改的轨道。如果在不了解您的应用程序设计的情况下出现问题,我很难解决。

另见gem

答案 1 :(得分:1)

//在现有应用中添加对纱线的反应

yarn install
yarn add https://github.com/rails/webpacker.git 
yarn add react
yarn add axios 

resolved_paths: ['app/assets'] //将其添加到webpacker中以获取资产文件的访问权限