问题描述
我必须从头开始构建前端项目。
该项目雄心勃勃,将持续很长时间。在开发的最初几周中,我的主要目标是在良好的基础上开始。
因此,我想知道create-react-app是否是一个好选择,因为它很容易上手并且此工具箱针对生产进行了优化。
但是,如果我使用此解决方案,项目的模块化程度如何?
有人知道使用CRA在项目中是否会出现一些缺陷吗?
我主要担心的是捆扎机。
如果项目越来越大,我是否必须优化CRA的webpack配置?
使用我自己的捆绑器配置从头开始创建我的项目更好吗?
解决方法
CRA是一种轻量级环境,可在客户端(浏览器)上生成HTML。
这意味着它属于客户端渲染(通过Google进行搜索)的优缺点。
有关CRA的优势,请参见how to update a field value to another field's value。
缺点:
- 有意识的设置(几乎与所有工具一样)。
- 难以配置。
我认为没有其他有趣的缺点可以讨论。
非常重要的旁注:开发周期应与生产环境脱钩。
我想解决一些基本问题,因为我看到许多类似的问题。
反应只涉及组成和隔离(请参见docs,Design Principles)。意味着您的React组件应在任何环境下均可
因此,在开发应用程序时,您应该专注进行隔离的开发,因此实际上仅需要使用Thinking in React之类的工具进行开发。
我认为新项目的开发周期是
- 决定任何环境(例如CRA / Gatsby / Next等)
- 独立开发组件(例如使用Storybook)。
- 将推送更改为生产环境。
- 重复1-2,直到遇到瓶颈(例如,您发现CSR对于您的应用程序效果不佳)。
- 切换生产环境(请记住,您的组件应在任何环境下工作)。转到1。
祝你好运。
,对我来说,我不使用 CRA 的首要原因是没有用于开发/暂存构建的选项。 react-scripts build
将始终将环境设置为生产并生成缩小的构建,不适合在开发/暂存环境中托管。