我工作的公司目前正在尝试更新版本的前端。一个功能是一个独立的React应用程序,可以提供Rails API。我们希望应用程序的一部分(React部分)使用react路由器而不是rails路由器。
我们有什么方法可以将react应用程序作为应用程序的一部分嵌入,同时仍然保持会话并能够使用rails路由器作为rails组件和反应组件的反应路由器。 / p>
答案 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中以获取资产文件的访问权限