ruby-on-rails - 如何使用 webpacker 和 React 在 Rails 6 应用程序上启用 ssr
问题描述
我猜由于新搭建的 Rails 应用程序使用 webpacker,添加像 react rails 这样的 gem 将是一种反模式。也就是说,是否有一种规范的方法可以在具有反应的 Rails 应用程序上启用 ssr,或者我是否还需要为此运行节点?
解决方案
我最近尝试了 3 种流行的解决方案:
- Rails + Webpacker
- Rails + Webpacker + react_on_rails
- Rails + Webpacker + react-rails
react_on_rails 意见...它不使用可以使用 RSpec (Capybara) 结合 React + Rails 环境的集成测试。webpack 和 rails 服务器都通过 foreman gem 运行,这意味着您必须添加另一个复杂的配置才能让 RSpec 集成测试遍历两者。我已经在配置自己的设置太多了(Docker、Heroku 等等……)。过去一年的提交历史也主要是文档更改(不过现在看过去几周有一些活动)。它还推广了“Pro”版本,这让我有点失望。
react-rails 更轻量级并且更容易开始工作。该团队是官方的 React 团队 (reactjs.org)。它对我来说“刚刚工作”。
如果您需要一个起点,我建议您查看这个作为 Rails + React 设置构建的 Rails 入门工具包:
https://github.com/patrickclery/dry-rails-react
特别是这些文件:
- babel.config.js
- 应用程序/javascript/packs/application.js
- 应用程序/javascript/packs/server_rendering.js
- 包.json
- 配置/webpacker.yml
推荐阅读
- android - 本机脚本如何访问 10.0.2.2 android
- ebay-api - eBay Fulfillment API 不返回送货地址
- javascript - 在 Leaflet 中使用 MultiLineString 的问题
- javascript - 仅在浏览器上调用我自己的 Firbase 函数被 CORS 阻止
- c++ - 如何将项目从 Microsoft Visual Studio 6.0 转换为 Visual Studio 2017
- ansible - 如果值为真,则获取密钥
- javascript - 动态输入字段在变量中增加数字+1
- c++ - 最大子窗口
- ansible - 错误!相互冲突的行动声明:附加、邮件
- html - 如何制作带有底部信息的 3 张图像