首页 > 解决方案 > 在 Ruby on Rails 应用程序中反应 .js.jsx 扩展

问题描述

目前在一个在前端使用 React 并在后端使用 Ruby on Rails 的项目中,我可以看到.js.jsx所有与 React 相关的逻辑的文件。这对我来说有点困惑,因为我习惯于 React 只看到.js.jsx文件扩展名。

Ruby on Rails 使用 Ruby 有什么理由.js.jsx吗?我根本不喜欢 Ruby 世界,因此这是我唯一的一个猜测,为什么它应该是这样的。或者这样做只是开发人员的错误?

标签: javascriptruby-on-railsrubyreactjsfile-extension

解决方案


使用react-rails gem的人可以使用.js.jsx扩展,因为这个 gem(库)能够在js没有外部构建步骤的情况下编译它以清理代码。根据文档:

当您使用 myfile.js.jsx 命名文件时,react-rails 将自动尝试转换该文件。目前,我们仍然要求您在文件开头包含 docblock。例如,此文件将根据请求进行转换。

/** @jsx React.DOM */
React.renderComponent(<MyComponent/>, document.getElementById('example'))

推荐阅读