目前在一个在前端使用 React 和后端使用 Ruby on Rails 的项目中,我可以看到所有与 React 相关的逻辑.js.jsx
文件。这对我来说有点混乱,因为我习惯于 React 只看到.js
或.jsx
的文件扩展名。
Ruby on Rails有什么理由使用.js.jsx
吗?我根本不喜欢 Ruby 世界,因此我唯一的猜测是为什么它应该这样。或者这只是开发人员的错误?
使用react-rails
gem 的人可以使用.js.jsx
扩展,因为这个 gem(库(能够在没有外部构建步骤的情况下编译它以清理js
代码。 根据文档:
当你用myfile.js.jsx命名文件时,react-rails会自动尝试转换该文件。目前,我们仍然要求您在文件的开头包含文档块。例如,此文件将根据请求进行转换。
/** @jsx React.DOM */
React.renderComponent(<MyComponent/>, document.getElementById('example'))