首页 > 解决方案 > 如何在构建文件夹中构建反应项目

问题描述

当我这样做时:npm run build我想在构建文件夹中创建一个文件夹并将所有构建输出移动到该文件夹​​中。

此刻我正在这样做:

"prebuild": "npm run build:clean",
"build": "react-scripts build",
"postbuild": "mkdir dest && cp -r build/* dest && npm run build:clean && mv dest build",
"build:clean": "rimraf build/*",
  1. 清除构建文件夹
  2. 构建应用
  3. 创建目标文件夹
  4. 复制 dest 文件夹中 build 文件夹中的所有内容
  5. 清除构建文件夹
  6. 将 dest 文件夹移到 build 文件夹中

我怎样才能减少它?

标签: javascriptreactjs

解决方案


简单的答案是:你不能改变它

构建输出是固定的create-react-app,不能更改,这个决定源于 CRA 的哲学。

引用 create-react-app 的合著者 Dan Abramov 的话

我认为缺少此功能并不奇怪。很大程度上,这是故意的。它确保大多数人都有类似的设置,并且人们可以在假设相同的目录结构的情况下构建工具(例如用于部署)。

但是,您可以使用他备份的技巧mv用于移动build输出:

"build": "react-scripts build && mv build {YOUR_PATH}"

推荐阅读