react.js - 使用什么扩展名 - ' .jsx'或只是' .js'?

时间:2015-01-11 13:33:43

标签: javascript reactjs

我只想弄清楚我的应用程序有什么好处:

  1. 使用.jsx扩展程序,但我需要在require('MyComponent.jsx');

  2. 这样的require函数中要求具有显式扩展名的组件
  3. 使用.js扩展程序,这很好require('MyComponent);但我需要破解Sublime来正确隐藏它们并突出显示语法。

  4. 你的经历是什么?

1 个答案:

答案 0 :(得分:17)

更新用户的更新

JSX编译器工具已被删除,因为不推荐使用JSXTransformer。 React团队建议使用其他工具,例如Babel REPL


如果您希望保持JSX source code完好无损,以便更好地维护,我会将它们保留为.jsx个文件。手动或通过构建脚本使用JSX Compiler会将您的JSX语法转换为普通的JavaScript文件。

注意:可以在生产环境中提供JSX文件,但React会向您提供有关降低性能的console通知。


就个人而言,我会使用gulp-jsxgulp-reactify之类的内容来转换文件。

gulp-jsx 的示例:

var gulp = require('gulp');
var jsx  = require('gulp-jsx');

gulp.task('build', function() {
  return gulp.src('path/to/*.jsx')
    .pipe(jsx())
    .pipe(gulp.dest('dist'));
});