设置 React-project:Babelify 做什么?

Setting up React-project: What does Babelify do?

我目前正在学习如何使用 npm、Babel 和 Browserify 设置 React 项目。

Babel 的用法对我来说似乎很清楚:它将 JSX 和 ES6 代码转换为 ES5 代码,这在所有浏览器中都是 运行。

与 Browserify 相同:它将我使用的 npm 包(React-DOM、React 等)与我自己的代码捆绑到一个大文件中。这些文件随后可用于部署到生产环境。

但我很难理解 Babelify 的用途。 我读过 "allows to use Babel with Browserify"。一篇站点文章说它是 "Babel transformer for Browserify".

所有这些解释对我来说有点奇怪,因为如果:

Babel 是一个转译器,可以将 JSX、ES6、TypeScript 等代码转译为浏览器兼容的代码。 为什么 Babel 的输出需要额外的 "transformer"?

babelify是browserify转换包。

您不能将纯 babel 包与 browserify 一起使用。因此,您应该使用 babelify 包,其中包含 babel 内部,以便能够使用 browserify 将 es6 代码转换为 es5。