问题描述
运行npm构建后,将生成./dist/index.html
文件,且不带引号。该项目没有 webpack.config.js 或 vue.config.js 。该构建是通过使用vue create
创建的示例项目生成的。我该如何解决?
<!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"><link rel=icon href=/favicon.ico><title>html-project</title><link href=/app.css rel=preload as=style><link href=/app.js rel=preload as=script><link href=/chunk-vendors.js rel=preload as=script><link href=/app.css rel=stylesheet></head><body><noscript><strong>We're sorry but html-project doesn't work properly without JavaScript enabled. Please enable it to continue.</strong></noscript><div id=app></div><script src=/chunk-vendors.js></script><script src=/app.js></script></body></html>
解决方法
那里不需要属性引号(仍然是valid HTML),因此在生产版本中将其删除以减小HTML文件的输出大小。
如果您希望保留引号,则可以按以下方式配置HTML minifier options(即,特别是removeAttributeQuotes
)
// vue.config.js
module.exports = {
chainWebpack: config => {
config.plugin('html').tap((args) => {
args[0].minify = {
...args[0].minify,removeAttributeQuotes: false
}
return args
})
}
}