React 团队推出了一款新工具,希望帮助开发人员减轻新建 React 应用所引发的痛苦。
在一篇博文中,Dan Abramov 介绍了 Create React App 。该工具让开发人员可以使用一行命令新建一个 React 应用程序——包括其构建过程和依赖。这是官方支持的一种 React 应用程序创建方式,不过,它还不是一个和 Ember CLI 或 Angular CLI 本着同样精神的“React CLI”。
开发人员使用三个命令就可以新建一个 React 应用:
npm install -g create-react-app create-react-app hello-world npm start
该工具将在现代 React 应用中常见的 Babel 和 Webpack 命令抽象为一个命令集。Abramov 表示,他们之所以构建这个工具,是因为“React 生态系统普遍经历了工具不可阻挡地爆炸式增长”:
综合运用这些工具需要对其中的每一种都有一些使用经验。即便如此,还是很容易陷入同零碎的不兼容、未解决的 peerDependencies 及模糊的配置文件的斗争中。那些工具有许多是插件平台,并不直接知道彼此的存在,需要客户将它们连接在一起。这些工具都是独立的发展和修改,教程很快就过期了。
理论上讲,React 入门并不需要了解很多,但构建生产级应用需要的就多了。随着时间推移,React 社区越来越依赖 Babel 和 Webpack,它们成为默认工具链的一部分。然而,这两项技术却经常让开发人员感到沮丧。例如,Babel 不会对普通安装作任何处理。按照 Andrew Stuart 的说法,Babel默认是无用的。Abramov重新界定了Babel 的意图,他说,“Babel 没有错,它只是想要成为一个更为底层的工具。在我看来,你不能(应该)基于它进行构建。”
有经验的React 开发人员已经给出了对他们来说行得通的构建过程。这个新工具将帮助社区里的其他人,让那些没有React 经验的人可以更快地入门。“Eject”特性让那些超过工具发展速度的人可以不受其约束,走自己的路。Reddit 用户 a_simple_pie 评论说:
“Eject”真是这方面的一个杀手级特性。我想做的第一件事是增加 SASS 支持,因此,能够 eject 很棒。
按照 Abramov 的说法,Create React App 目前还不具备一个完整 CLI 工具的广度,这是正常的,因为它是“一个用一周时间创建的黑客马拉松项目”。他们还会继续增强该工具的功能,比如增加测试。但是,据Abramov 说,他们不会在短时间内做太多工作,他们会“逐步改进默认设置,覆盖更多的用例。”
该项目的 GitHub 页面提供了更多有关该工具功能的信息。
评论