多个资产向同一个文件名 index.html 发出不同的内容
Posted
技术标签:
【中文标题】多个资产向同一个文件名 index.html 发出不同的内容【英文标题】:Multiple assets emit different content to the same filename index.html 【发布时间】:2021-05-16 02:40:05 【问题描述】:我的 webpack 配置出现以下错误 Multiple assets emit different content to the same filename index.html
当我删除 htmlWebpackPlugin 时,它可以工作,但我不会显示任何 html。我正在使用 Vue.js,我的配置如下所示:
const path = require('path')
const VueLoaderPlugin = require('vue-loader')
const HtmlWebpackPlugin = require('html-webpack-plugin')
const CopyWebpackPlugin = require('copy-webpack-plugin')
const CleanWebpackPlugin = require('clean-webpack-plugin')
module.exports = (env, argv) => (
mode: argv && argv.mode || 'development',
devtool: (argv && argv.mode || 'development') === 'production' ? 'source-map' : 'eval',
entry: './src/app.js',
output:
path: path.resolve(__dirname, 'dist'),
filename: '[name].js'
,
node: false,
module:
rules: [
test: /\.vue$/,
loader: 'vue-loader'
,
test: /\.js$/,
loader: 'babel-loader'
,
test: /\.css$/,
use: [
'vue-style-loader',
'css-loader'
],
exclude: /\.module\.css$/
]
,
resolve:
extensions: [
'.js',
'.vue',
'.json'
],
alias:
'vue$': 'vue/dist/vue.esm.js',
'@': path.resolve(__dirname, 'src')
,
plugins: [
new CleanWebpackPlugin(
cleanAfterEveryBuildPatterns: ['dist']
),
new VueLoaderPlugin(),
new HtmlWebpackPlugin(),
new CopyWebpackPlugin(
patterns: [
from: path.resolve(__dirname, 'static'),
to: path.resolve(__dirname, 'dist'),
toType: 'dir'
]
)
],
devServer:
compress: true,
host: 'localhost',
https: true,
open: true,
overlay: true,
port: 9000
);
我的文件结构是这样的
我查看了Conflict: Multiple assets emit to the same filename,但没有适合我的解决方案,还有其他选择吗?
【问题讨论】:
由于 CopyWebpackPlugin,我遇到了同样的错误。 【参考方案1】:会不会是Vue loader also emitsindex.html
?
试试:
new HtmlWebpackPlugin(
template: './index.html',
filename: 'anotherFileName.html',
),
【讨论】:
说实话,我已经放弃了这个项目以上是关于多个资产向同一个文件名 index.html 发出不同的内容的主要内容,如果未能解决你的问题,请参考以下文章