webpack插件之htmlWebpackPlugin

webpack插件 自动化 htmlWebpackPlugin 

由于webpack已经帮我们处理好js之间的依赖关系,现在我们可以忽略js的加载顺序,而只要在index.html内使用<script>标签引入bundle.js即可。


在index.html内使用引入bundle.js

开发阶段,index.html在根目录,script引入好像也没什么问题。


index.html在根目录

但在真实发布项目时,发布的内容js文件都在dist文件夹内。但dist文件夹中现在没有有index.html文件,怎么引入js文件? 那么打包js等文件好像毫无用处了。

现在我们的需求是

1.将index.html放到dist文件夹内

2.由于index.html的路径发生改变了,所以引入的路径也要做出的相应改变


.将index.html放到dist文件夹内并修改路径

这些修改都要手动操作,手动操作难免出错,这个时候我们就需要一个插件..

htmlWebpackPlugin

HtmlWebpackPlugin插件功能:

口在指定路径自动生成一个index.html文件(可指定模板生成)

口将打包好的js文件,自动通过script标签插入到body中

如果一个插件是webpack自带的,这时仅需导入即可;如果不是自带的,那就需要安装,然后再导入。

为了减少webpack的包体大小,大部分插件都不是webpack自带,需要自行安装。

htmlWebpackPlugin使用步骤

1.安装htmlWebpackPlugin指令

npm i html-webpack-plugin --save-dev

2.修改webpack.config.js配置,先引用html-webpack-plugin插件,并添加plugins属性


引用html-webpack-plugin插件,并添加plugins属性

3.运行npm run build指令,最后程序在dist文件夹自动生成一个index.html文件,此时无需我们再手动更改index.html的位置和引入js脚本.


dist文件夹自动生成一个index.html

自动引入打包好的js文件

4.由于我们使用webpack与vue协同开发,body体还需要一个div容器,用于绑定和挂载vue的元素,此时需要一个模板index.htm来生成。即dist文件夹下index.html需要根目录的index.html生成。修改根目录的index.html,并且给webpack.config.js下的htmlWebpackPlugin添加一个模板参数。


修改根目录的index.html

给webpack.config.js下的htmlWebpackPlugin添加一个模板参数

5.运行npm run build指令,最后程序在dist文件夹自动生成一个index.html文件


运行npm run build指令

npm run build

6.打开浏览器控制台,在控制台可看到相应的输出。


打开浏览器控制台,在控制台可看到相应的输出

webpack插件之htmlWebpackPlugin的更多相关文章

  1. webpack插件之html-webpack-plugin

    官方文档:https://www.npmjs.com/package/html-webpack-plugin html-webpack-plugin 插件专门为由webpack打包后的js提供一个载体 ...

  2. webpack 插件: html-webpack-plugin

    插件地址:https://www.npmjs.com/package/html-webpack-plugin 这个插件用来简化创建服务于 webpack bundle 的 HTML 文件,尤其是对于在 ...

  3. webpack插件解析:HtmlWebpackPlugin是干什么的以及如何使用它

    HtmlWebpackPlugin是一个出现频率比较高的webpack插件,本文对其作用和配置作一番比较详细的分析(本文的配置均在webpack.config.js中进行). 为何使用它 简单来说,H ...

  4. 【webpack插件使用】在开发中快速掌握并使用Webpack构建web应用程序

    1.webpack-dev-server插件的基本使用 入门程序 const path = require('path'); // 导出一个Webpack的配置对象(通过node中的模块操作,向外暴露 ...

  5. webpack 插件拾趣 (1) —— webpack-dev-server

    结束了一季的忙碌,我这封笔已久的博客也终究该从春困的咒印中复苏,想来写些实用易读的作为开篇,自然是最好不过. 新开个 webpack 插件/工具介绍的文章系列,约莫每周更新一篇篇幅适中的文章聊以共勉, ...

  6. 探寻 webpack 插件机制

    webpack 可谓是让人欣喜又让人忧,功能强大但需要一定的学习成本.在探寻 webpack 插件机制前,首先需要了解一件有意思的事情,webpack 插件机制是整个 webpack 工具的骨架,而 ...

  7. 编写webpack 插件

    Webpack插件为第三方开发者释放了Webpack的最大可能性.利用多级回调开发者可以把他们自己的需要的功能引入到Webpack里面来.Build插件比Build loader 更进一步.因为你需要 ...

  8. 从0开始编写webpack插件

    1. 前言 插件(plugins)是webpack中的一等功臣.正是由于有了诸多插件的存在,才使得webpack无所不能.在webpack源码中也是使用了大量的内部插件,插件要是用的好,可以让你的工作 ...

  9. webpack插件之webpack-dev-server

    webpack插件之webpack-dev-server webpack插件 自动化 webpack-dev-server  现在只需要使用 npm run build指令就可以自动打包,并自动处理好 ...

随机推荐

  1. 出大问题!webpack 多入口&&html模板在后端

    新公司前后端不分离,后端用的是php的twig 我用webpack做多入口文件的打包,虽然成功了.但是引入js和css是在twig上写死的根据文件名. 一开始没问题,因为就定死了那么几个global. ...

  2. solve update pip 10.0.0

    The bug is found in pip 10.0.0. In linux you need to modify file: /usr/bin/pip from: from pip import ...

  3. Linux FTP的安装与权限配置

    ftp安装部分,操作步骤如下: 1.切换到root用户 2.查看是否安装vsftp,我这个是已经安装的. [root@localhost vsftpd]# rpm -qa |grep vsftpd v ...

  4. view视图总结

    视图实质上存储的是一段sql. 创建方式: 1.create view  视图名 as  子查询语句   , 特点:与主表数据同步,对当前视图进行修改,会同时将根表一并修改.  2.create or ...

  5. CSS高度坍塌问题的原因以及解决办法

    原因: 在文档流中,父元素的高度默认是被子元素撑开的,也就是子元素多高,父元素就多高.但是当为子元素设置浮动以后,子元素会完全脱离文档流,此时将会导致子元素无法撑起父元素的高度,导致父元素的高度塌陷. ...

  6. xml发post请求

    # python3字符串换行,在右边加个反斜杠 body = '<?xml version="1.0" encoding = "UTF-8"?>' ...

  7. shell脚本之删除内容相同的重复文件

    #!/bin/bash #!当前文件夹下,删除内容相同的重复文件,只保留重复文件中的一个. ls -lS --time-style=long-iso | awk 'BEGIN{ getline;get ...

  8. 三、使用Fiddler劫持网络资源(手机端)

    一.使用说明https://www.cnblogs.com/woaixuexi9999/p/9247705.html

  9. MySQL 表的增删查改

    一.插入数据 1. INSERT ... VALUES ... INSERT INTO <表名> [ <列名1> [ , … <列名n>] ] VALUES (值1 ...

  10. xz 解压缩命令,老是忘记

    .tar.xz的解压命令 $ xz -d ***.tar.xz $ tar -xvf ***.tar 或者 $ tar xvJf ***.tar.xz