修改输出资源的名称和路径
约 421 字大约 1 分钟
2025-03-15
详细配置
配置输出的资源路径
const path = require("path");
module.exports = {
entry: "./src/main.js",
output: {
// 输出的文件的统一路径
path: path.resolve(__dirname, "dist"),
// 输出的 bundle 文件名和目录,将其写入到 output.path 目录下
filename: "js/[name].[contenthash:8].js",
// 定义非入口 chunk 的名称,主要是动态导入的模块
chunkFilename: "static/js/[name].chunk.js",
// 清空上次的输出结果
// 输出的字体、图片等资源
assetModuleFilename: "static/imgs/[hash:8][ext][query]",
// 所有资源的引入路径都以 /base/ 开头。
publicPath: "/base/", // 例如 Github Page 需要配置这个选项,一般配置为仓库名称。
clean: true,
},
module: {
rules: [
{
test: /\.(png|jpe?g|gif|webp)$/,
type: "asset",
parser: {
dataUrlCondition: {
maxSize: 10 * 1024, // 小于10kb的图片会被base64处理
},
},
generator: {
// 将图片文件输出到 static/imgs 目录中
// 将图片文件命名 [hash:8][ext][query]
// [hash:8]: hash值取8位
// [ext]: 使用之前的文件扩展名
// [query]: 添加之前的query参数
filename: "static/imgs/[hash:8][ext][query]",
},
},
],
},
plugins: [],
mode: "development",
};
2. 修改 index.html
调整 js 资源路径,引入输出的编译文件
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>webpack5</title>
</head>
<body>
<h1>Hello Webpack5</h1>
<div class="box1"></div>
<div class="box2"></div>
<div class="box3"></div>
<div class="box4"></div>
<div class="box5"></div>
<!-- 修改 js 资源路径 -->
<script src="../dist/static/js/main.js"></script>
</body>
</html>
3. 运行指令
npx webpack
- 此时输出文件目录:
(注意:需要将上次打包生成的文件清空,再重新打包才有效果)
├── dist
└── static
├── imgs
│ └── 7003350e.png
└── js
└── main.js
更新日志
2025/8/24 08:17
查看所有更新日志
e7112
-1于