我是rails开发人员的经验丰富的ruby,并尝试使用 reactjs . 所以我安装了 react-rails gem 并按照说明操作 .
有两种可能的入门方法:
-
使用资产管道
-
使用webpacker
Webpacker gem看起来很新,我很难让webpacker-dev-server与我当前的rails应用程序一起工作 . 并且使用foreman运行两个进程(一个用于rails,一个用于webpacker)看起来太依赖了 .
因此,我将所有的React组件放在 app/assets/javascripts/components/MyComponent.jsx
中,继续进行资产管道方法 . 一切正常,我能够使用 <%=reach_component("MyComponent")%>
渲染组件
现在我想围绕它设计一个单页应用程序 . 因此我开始探索react-router . 但是对于如何使用 react-router
和 react-rails
gem没有正确的解释 .
我尝试在 packages.json
中添加 react-router package
并运行 yarn
但在所有包含之后在浏览器上出现以下错误 .
Uncaught ReferenceError: exports is not defined
在没有webpack的情况下开始使用react-router和rails以及在浏览器中不使用babel并使客户端变重的任何帮助?
1 回答
浏览器错误是因为您没有将CommonJS代码(即导出语句)转换为适合在浏览器上运行的格式 .
我没有尝试让Ract在rails中运行,所以我不确定资产管道是否能够使用节点库,但您可能需要考虑将方法转换为这样的方法:
http://blog.arkency.com/2015/03/gulp-modern-approach-to-asset-pipeline-for-rails-developers/