为了账号安全,请及时绑定邮箱和手机立即绑定

如何在 webpack 中创建具有给定名称的输出文件名?

如何在 webpack 中创建具有给定名称的输出文件名?

qq_笑_17 2022-12-02 17:18:43
我有使用 ES 模块的库,我想在 ES5 中生成 UMD 文件。我有这样的配置:var path = require('path');var webpack = require('webpack');module.exports = {    entry: {        index: path.resolve('./src/index.js')    },    output: {        library: 'name',        libraryTarget: 'umd',        path: path.resolve(__dirname, 'dist'),        filename: 'umd.min.js'    },    module: {        loaders: [            {                test: /\.js$/,                loader: 'babel-loader',                exclude: /node_modules/,                query: {                    presets: ['env']                }            }        ]    },    stats: {        colors: true    },    mode: 'production',    devtool: 'source-map'};和 webpack 创建文件main.js我怎样才能制作输出文件umd.min.js?> webpack --mode productionHash: 98ccf0949bfdf066246aVersion: webpack 4.44.0Time: 97msBuilt at: 25.07.2020 16:30:31  Asset      Size  Chunks             Chunk Namesmain.js  2.23 KiB       0  [emitted]  mainEntrypoint main = main.js[0] ./src/index.js + 3 modules 3.6 KiB {0} [built]    | ./src/index.js 294 bytes [built]    | ./src/Canvas.js 1.88 KiB [built]    | ./src/Item.js 1.2 KiB [built]    | ./src/constants.js 239 bytes [built]我的 package.json 看起来像这样:  "type": "module",  "main": "./src/index.js",  "unpkg": "./dist/umd.min.js",所以这是一个错误?为什么文件名为main.js?
查看完整描述

2 回答

?
汪汪一只猫

TA贡献1898条经验 获得超8个赞

所以,默认情况下 webpack 发出块名称为“main.js”,所以如果你想重命名块名称,请在你的 webpack 配置文件的输出对象中使用“chunkFilename”选项,这是我如何做的例子那:


output: {

filename: env === 'development' ? '[name].js' : '[name].[hash].js',

path: path.resolve(__dirname, '../dist'),

chunkFilename: 'scripts/[name].[hash].js',},

在你的情况下你应该这样做:


chunkFilename: 'umd.min.js'


查看完整回答
反对 回复 2022-12-02
?
蝴蝶不菲

TA贡献1810条经验 获得超4个赞

问题是 webpack-cli 建议将文件重命名为 cjs 但不要说它默认不加载,您需要在运行 webpack 时显式添加 --config 和文件名。

看到这个问题:

https://github.com/webpack/webpack-cli/issues/1165


查看完整回答
反对 回复 2022-12-02
  • 2 回答
  • 0 关注
  • 164 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号