当前位置:首页 > React

react打包如何不删除源码

2026-01-25 17:32:30React

配置自定义构建输出目录

在项目根目录下创建或修改 craco.config.js(使用CRACO)或 config-overrides.js(使用react-app-rewired),通过覆盖Webpack配置保留源码。以下示例使用CRACO:

const path = require('path');
module.exports = {
  webpack: {
    configure: (webpackConfig) => {
      webpackConfig.output.path = path.resolve(__dirname, 'build_with_source');
      return webpackConfig;
    }
  }
};

修改package.json构建脚本

调整构建命令以使用自定义配置工具。对于CRACO用户:

"scripts": {
  "build": "craco build",
  "build:with-source": "react-scripts build && cp -r src build/src"
}

手动复制源码到构建目录

在构建完成后执行文件复制操作。Linux/macOS系统可使用shell命令:

react-scripts build && cp -r src build/src

Windows系统可使用PowerShell命令:

react-scripts build && xcopy /E /I src build\src

使用环境变量控制源码保留

创建 .env 文件添加配置:

GENERATE_SOURCEMAP=true
INLINE_RUNTIME_CHUNK=false

配置Webpack的SourceMap选项

通过自定义配置启用详细source map:

// craco.config.js
module.exports = {
  webpack: {
    configure: {
      devtool: 'source-map'
    }
  }
};

使用文件系统插件自动备份

安装copy-webpack-plugin并配置:

const CopyPlugin = require("copy-webpack-plugin");
module.exports = {
  webpack: {
    plugins: [
      new CopyPlugin({
        patterns: [
          { from: "src", to: "src_backup" }
        ],
      }),
    ],
  }
};

创建构建后脚本

添加Node.js脚本postbuild.js

const fs = require('fs-extra');
fs.copySync('./src', './build/src');

在package.json中添加:

react打包如何不删除源码

"scripts": {
  "postbuild": "node postbuild.js"
}

以上方法可根据实际需求组合使用,注意生产环境保留源码可能带来安全风险,建议仅用于开发或测试环境。

标签: 源码react
分享给朋友:

相关文章

react如何销毁

react如何销毁

React 组件销毁的机制 在 React 中,组件的销毁通常由 React 的生命周期管理。当组件从 DOM 中移除时,React 会自动触发销毁相关的生命周期方法。以下是关键点: 组件的销毁通常…

react如何安装

react如何安装

安装React的步骤 确保已安装Node.js(建议版本12或更高),可通过以下命令检查版本: node -v npm -v 使用Create React App快速搭建项目(推荐): npx c…

react如何打包

react如何打包

打包 React 项目的基本步骤 React 项目通常使用 create-react-app 或类似的脚手架工具创建,这些工具内置了打包功能。以下是打包 React 项目的详细方法: 安装依赖并构建…

如何运行react

如何运行react

运行 React 项目的步骤 安装 Node.js 和 npm 确保系统已安装 Node.js(包含 npm)。可通过官网 Node.js 下载并安装最新稳定版本。安装完成后,验证版本: node…

如何构建react

如何构建react

构建 React 项目的步骤 安装 Node.js 和 npm 确保系统已安装 Node.js(包含 npm)。可通过命令行验证: node -v npm -v 使用 Create React Ap…

react如何分

react如何分

React 分页实现方法 在 React 中实现分页功能可以通过多种方式完成,以下是几种常见的方法: 使用状态管理分页数据 在组件内部维护当前页码和每页数据量的状态,通过计算切片数据实现分页。…