使用 babel.js 而不是 browserify 编译成 bundle

Using babel.js instead of browserify to compile to bundle

我开始使用 babel.js 来利用 JavaScript ES6 功能,但是我 运行 遇到了一个问题

我目前正在使用 browserify 构建我的应用程序并使用以下命令进行反应。

browserify -t reactify app/main.js -o public/scripts/bundle.js

现在我想在 babel 中使用一个等效的命令来捆绑我需要的模块,用 ES6 编写成 bundle.js。这不起作用,只是给我一个 ES5 版本的 main.js 文件。

babel app/main.js -o public/scripts/bundle.js

但是我可以使用 babel 将我的 bundle.js 文件编译成 ES6 版本,有 2 个命令

browserify -t reactify app/main.js -o public/scripts/bundle.js
babel app/main.js -o public/scripts/babel.js

这是将 babel 与 browserify 一起使用的正确方法吗?将您的模块与 browserify 捆绑在一起,然后将捆绑包转换为 ES6?

不对,正确的方法是使用babelify。

# from
browserify -t reactify app/main.js -o public/scripts/bundle.js
# to
browserify -t babelify app/main.js -o public/scripts/bundle.js

还有reactify/react-tools/jsx-loader/etc。来自 React 团队的工具做 babel 做的一部分,所以如果你使用 babel,你可以完全删除它们。