Vue CLI“index.html”内容

2 javascript vue.js vue-cli-3

每当我运行npm run build它时,它都会生成一个带有我的应用程序的 dist 文件夹,一切都很好,但是..

我的问题:

当我打开我index.html<!DOCTYPE>, <head>, <body>标签时,但就我而言,我只需要<div id="app">带有 CSS 和 JS 文件的标签。

题:

是否可以删除我不需要生成的标签,就像我的情况一样<!DOCTYPE>, <body>, <head>

每当我运行npm run build它时,它应该看起来像这样index.html

<link href=/testing/path/css/app.6878f4f8.css rel=preload as=style>
<link href=/testing/path/js/app.457dc9d3.js rel=preload as=script>
<link href=/testing/path/js/chunk-vendors.a0cfb1f1.js rel=preload as=script>
<link href=/testing/path/css/app.6878f4f8.css rel=stylesheet>
 <div id=app>
 </div>
<script src=/testing/path/js/chunk-vendors.a0cfb1f1.js></script>
<script src=/testing/path/js/app.457dc9d3.js></script>
Run Code Online (Sandbox Code Playgroud)

否则我需要打开文件并手动删除它

ton*_*y19 7

Vue CLI 生成的项目public/index.html用作模板,其中包含您想要避免的标题和标签。Vue 所需的唯一元素是<div id="app"></div>,因此您可以从public/index.html.

请注意preloadprefetch、 和 CSS 插件(默认启用)将插入一个<head>. 您可以使用此配置禁用preloadprefetch插件:

// vue.config.js
module.exports = {
  chainWebpack: config => {
    config.plugins.delete('prefetch')
    config.plugins.delete('preload')
  }
}
Run Code Online (Sandbox Code Playgroud)

最终输出将类似于:

<head><link href=/css/app.e2713bb0.css rel=stylesheet></head>
<div id=app></div>
<script src=/js/chunk-vendors.327f60f7.js></script>
<script src=/js/app.fb8740dd.js></script>
Run Code Online (Sandbox Code Playgroud)