扩展:React 项目执行 yarn eject 后的 scripts 目录结构详解

扩展:React 项目执行 yarn eject 后的 scripts 目录结构详解

  • [什么是 yarn eject?](#什么是 yarn eject?)
  • [scripts 目录结构与说明](#scripts 目录结构与说明)

什么是 yarn eject?

yarn eject 是 Create React App(简称 CRA)提供的一条命令,用于将项目从"封装模式"转为"完全可配置模式"。

执行后,CRA 默认隐藏的构建配置(如 Webpack、Babel、ESLint 等)会被暴露到项目中。

scripts 目录结构与说明

执行 yarn eject 后,create-react-app 会将 react-scripts 中的脚本抽出到本地的 scripts 目录中。这个目录包含 React 项目运行时的核心脚本,便于开发者进一步自定义开发、构建、测试流程。

各脚本说明

  • build.js

    • 用于打包生产环境代码。
    • 调用 Webpack,使用 config/webpack.config.js 生成 build/ 目录。
    • 包括环境变量设置、构建日志输出、性能提示等。
  • start.js

    • 用于启动开发服务器。
    • 启用 webpack-dev-server,支持热更新。
    • 加载配置:webpackDevServer.config.jswebpack.config.js
  • test.js

    • 启动测试环境,运行基于 Jest 的测试脚本。
    • 支持 watch 模式、生成覆盖率报告等。
    • 自动加载 Jest 配置路径 config/jest/

说明

在你执行 yarn eject 之后,eject.js 脚本不会被保留在项目中,因为它的职责就是将隐藏的配置暴露出来一次,执行完就"完成使命"了。它仍然存在于 react-scripts 的源码中(未 eject 的项目内部),但在 eject 后不会被复制到本地项目中。

  • eject.js 不会出现在项目中,它仅在未弹出前作为 react-scripts eject 的执行脚本。
  • 脚本中大量使用 Node.js API 和 cross-spawn 等工具处理进程管理和环境变量。
  • 脚本执行时默认读取 package.json 中的配置信息以及 config 文件夹的内容。

⚠️ 注意:eject 是不可逆的操作,所有脚本暴露后需由开发者手动维护,失去 CRA 自动更新支持。

相关推荐
Lazy_zheng1 小时前
React架构深度解析:从 Stack 到 Fiber,解决 CPU 和 I/O 瓶颈问题
前端·react.js·前端框架
WildBlue2 小时前
React 遇上原子 CSS:前端开发的超级进化 🚀
前端·react.js
kymjs张涛2 小时前
零一开源|前沿技术周刊 #9
前端框架·开源·github
namehu2 小时前
“c is not a function” - 一次由 useEffect 异步函数引发的 React 底层崩溃分析
前端·javascript·react.js
iaku2 小时前
🔥React工程化实践:构建企业级可维护应用架构
前端·react.js·前端框架
前端双越老师4 小时前
为何前端圈现在不关注源码了?
面试·前端框架·源码
晓得迷路了4 小时前
栗子前端技术周刊第 91 期 - 新版 React Compiler 文档、2025 HTML 状态调查、Bun v1.2.19...
前端·javascript·react.js
今禾18 小时前
前端开发中的Mock技术:深入理解vite-plugin-mock
前端·react.js·vite
我想说一句18 小时前
掘金移动端React开发实践:从布局到样式优化的完整指南
前端·react.js·前端框架
码间舞18 小时前
Zustand 与 useSyncExternalStore:现代 React 状态管理的极简之道
前端·react.js