From 2b3b9748e1cb0b3cfa6cf99dec0682e823c7c3b3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BC=A0=E6=88=90?= Date: Thu, 26 Mar 2026 11:23:57 +0800 Subject: [PATCH] 1 --- README.md | 1 + webpack.config.js | 22 +++++++++++++++++++++- 2 files changed, 22 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 4d23177..e703d65 100644 --- a/README.md +++ b/README.md @@ -23,6 +23,7 @@ | 文件 | 说明 | |------|------| | `admin-framework.js` | **UMD**,Terser 压缩,对外默认导出为框架单例;浏览器中为 `window.AdminFramework`,也可由 Webpack 等从该文件解析 `import` | +| `admin-framework.md` | 与根目录 `README.md` 内容相同,随 `npm run build` 一并复制到 `dist/`,便于随包分发使用说明 | 在项目根目录执行: diff --git a/webpack.config.js b/webpack.config.js index f930993..9adb8b4 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -1,6 +1,25 @@ - +const fs = require('fs') const path = require('path') const webpack = require('webpack') + +/** 构建完成后将根目录 README.md 复制为 dist/admin-framework.md */ +function copyReadmeToDistPlugin() { + return { + apply(compiler) { + compiler.hooks.afterEmit.tap('CopyReadmeToDist', () => { + const src = path.join(__dirname, 'README.md') + const dest = path.join(compiler.options.output.path, 'admin-framework.md') + try { + if (fs.existsSync(src)) { + fs.copyFileSync(src, dest) + } + } catch (e) { + console.warn('[webpack] 复制 README.md -> dist/admin-framework.md 失败:', e.message) + } + }) + } + } +} const { VueLoaderPlugin } = require('vue-loader') const TerserPlugin = require('terser-webpack-plugin') @@ -142,6 +161,7 @@ module.exports = { }, plugins: [ new VueLoaderPlugin(), + copyReadmeToDistPlugin(), new webpack.BannerPlugin({ banner: () => { const now = new Date()