【问题标题】:How to check if a create-react-app project has been ejected or not?如何检查 create-react-app 项目是否已被弹出?
【发布时间】:2021-01-28 14:33:04
【问题描述】:

我正在处理一个由其他人构建的项目。我知道它是由 create-react-app 引导的,因为它在 README.md 中这么说。

但是,我不确定它是否已被弹出。那里有很多帖子教你如何实际弹出它,但我一开始就没有找到检查它的方法。任何帮助表示赞赏!

【问题讨论】:

  • "我不确定它是否被弹出"只是尝试创建一个简单的项目并弹出它。你会在那里看到一些明显的差异...... :)
  • @YuryTarabanko 非常感谢! :)
  • 恕我直言,最明显的区别是eject 部分中缺少package.json#scripts 命令;)
  • @YuryTarabanko 是的!我怎么没想到呢!

标签: reactjs create-react-app


【解决方案1】:

create-react-app 项目已被退出的一些直接赠品:

  • package.json 中的依赖项字段不再包含 react-scripts。相反,它填充了许多其他包,例如 Babel、Eslint、Jess、Webpack 和各种 Webpack 加载器。
  • 没有eject 脚本。
  • start、build 和 test 不再遵循这种格式 react-scripts start、react-scripts build 等。
  • 出现一个名为config 的新目录。

分享只是因为您可能会或可能不会在您的项目中看到所有这些标志,因为它们可能很久以前就被弹出了。我希望没有人会花两个小时想知道为什么某个包不起作用,只是发现该项目已被弹出,并且该包仅适用于未弹出的包。

【讨论】:

    【解决方案2】:

    非常感谢@YuryTarabanko!

    所以我尝试使用 CRA 创建另一个项目并将其弹出。弹出后,弹出一个名为config的新目录,其他目录也有一些修改。

    然后我看了一下我真正感兴趣的项目。config 目录就在那里,其结构类似于弹出后弹出的新项目中的config 目录。所以我肯定这个项目也被淘汰了!

    编辑:

    正如 Yuri 在评论中指出的那样:

    恕我直言,最明显的区别是 package.json#scripts 部分中没有弹出命令;)

    【讨论】:

      【解决方案3】:

      我有点同意 package.json 中的脚本,但它很容易被删除。如果项目在 repo 中,您应该能够查看一些文件的历史记录来确定。

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-05-02
      • 2020-03-11
      • 1970-01-01
      • 2020-09-16
      • 2021-01-19
      • 2015-10-02
      • 1970-01-01
      相关资源
      最近更新 更多