我有这样结构的项目:
my-app/
├─ node_modules/
├─ dist/
├─ src/
│ ├─ index.css
│ ├─ index.js
│ ├─ index.html
├─ package.json
├─ webpack.config.js
我的webpack.js是:
const { Module } = require("webpack");
Module.exports = {
entry: './src/index.js',
output: {
filename: 'bundle.js',
path: __dirname + '/dist',
}
}
当我运行命令npx webpack
或npm run build
时,输出文件总是保存为dist/main.js
而不是dist/bundle.js
你知道我做错了什么吗?
文档(针对webpack 5(提供了几个用于设置entry
属性的选项。您正在使用";"单一条目";方法以下是文档对它的描述:
单输入(速记(语法
module.exports = {``` entry: './path/to/my/entry/file.js',``` };
entry属性的单条目语法是的简写
module.exports = { entry: { main: './path/to/my/entry/file.js', }, };
因此,重申一下,通过进行
entry: './src/index.js',
在您的配置文件中,您不知不觉地使用了简写,并将捆绑文件的名称设置为main.js
。
如果你查看上面链接的文档页面,你会发现有几种方法可以解决这个问题,但其中一种方法是将当前的entry
属性替换为:
entry: {
'bundle': './src/index.js'
},