繁体   English   中英

我真的需要 Babel 或其他转译器才能在 React 中使用 ES6 吗?

[英]Do I really need Babel or other transpilers to use ES6 with React?

我真的需要 Babel 或其他转译器才能在 React 中使用 ES6 吗?

我在看图表https://kangax.github.io/compat-table/es6/

似乎我当前的浏览器 Chrome(最新稳定版本)几乎支持所有 ES6 功能......

如果我可以不用 Babel 就可以使用 ES6,我应该怎么做?

如果你想:

  • 使用modules (使用require()import ...
  • 使用JSX
  • 支持很多浏览器
  • 使用更高级的特性( async/await ),一些仍在提案中(装饰器类属性..)

你必须使用 Babel 来确保每个人都能运行你的代码,否则你可以不用它进行开发。

绝对可以并且确实使用 ES6 W/O babel。 所有主流浏览器都原生支持绝大多数功能(参见 CanIUse.com ),实际上唯一不支持的主要功能是模块的导入/导出。

对于这些,您仍然必须使用 HTML 中的脚本标记以正确的顺序手动导入模块。 仅客户端(节点需要模块)。

但是,请注意,这对开发人员来说很好,但在生产中,无论如何您都需要将所有 JS 连接并最小化到一个模块中,因此最终可能会使用 Babel/Webpack 或 Babel/Browserify 风格的工具链。

如果没有 babel,您将获得链接到的图表的兼容性。 但是请记住,如果您想使用 JSX,您将需要使用 babel 来转译它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM