webpack插件之htmlWebpackPlugin
webpack插件之htmlWebpackPlugin
由于webpack已经帮我们处理好js之间的依赖关系,现在我们可以忽略js的加载顺序,而只要在index.html内使用<script>标签
引入bundle.js即可。
开发阶段,index.html在根目录,script引入好像也没什么问题。
但在真实发布项目时,发布的内容js文件都在dist文件夹内。但dist文件夹中现在没有有index.html文件,怎么引入js文件? 那么打包js等文件好像毫无用处了。
现在我们的需求是
1.将index.html放到dist文件夹内
2.由于index.html的路径发生改变了,所以引入的路径也要做出的相应改变
这些修改都要手动操作,手动操作难免出错,这个时候我们就需要一个插件..
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属性
3.运行npm run build指令,最后程序在dist文件夹自动生成一个index.html文件,此时无需我们再手动更改index.html的位置和引入js脚本.
4.由于我们使用webpack与vue协同开发,body体还需要一个div容器,用于绑定和挂载vue的元素,此时需要一个模板index.htm来生成。即dist文件夹下index.html需要根目录的index.html生成。修改根目录的index.html,并且给webpack.config.js下的htmlWebpackPlugin添加一个模板参数。
5.运行npm run build指令,最后程序在dist文件夹自动生成一个index.html文件
6.打开浏览器控制台,在控制台可看到相应的输出。
webpack插件之htmlWebpackPlugin的更多相关文章
- webpack插件之html-webpack-plugin
官方文档:https://www.npmjs.com/package/html-webpack-plugin html-webpack-plugin 插件专门为由webpack打包后的js提供一个载体 ...
- webpack 插件: html-webpack-plugin
插件地址:https://www.npmjs.com/package/html-webpack-plugin 这个插件用来简化创建服务于 webpack bundle 的 HTML 文件,尤其是对于在 ...
- webpack插件解析:HtmlWebpackPlugin是干什么的以及如何使用它
HtmlWebpackPlugin是一个出现频率比较高的webpack插件,本文对其作用和配置作一番比较详细的分析(本文的配置均在webpack.config.js中进行). 为何使用它 简单来说,H ...
- 【webpack插件使用】在开发中快速掌握并使用Webpack构建web应用程序
1.webpack-dev-server插件的基本使用 入门程序 const path = require('path'); // 导出一个Webpack的配置对象(通过node中的模块操作,向外暴露 ...
- webpack 插件拾趣 (1) —— webpack-dev-server
结束了一季的忙碌,我这封笔已久的博客也终究该从春困的咒印中复苏,想来写些实用易读的作为开篇,自然是最好不过. 新开个 webpack 插件/工具介绍的文章系列,约莫每周更新一篇篇幅适中的文章聊以共勉, ...
- 探寻 webpack 插件机制
webpack 可谓是让人欣喜又让人忧,功能强大但需要一定的学习成本.在探寻 webpack 插件机制前,首先需要了解一件有意思的事情,webpack 插件机制是整个 webpack 工具的骨架,而 ...
- 编写webpack 插件
Webpack插件为第三方开发者释放了Webpack的最大可能性.利用多级回调开发者可以把他们自己的需要的功能引入到Webpack里面来.Build插件比Build loader 更进一步.因为你需要 ...
- 从0开始编写webpack插件
1. 前言 插件(plugins)是webpack中的一等功臣.正是由于有了诸多插件的存在,才使得webpack无所不能.在webpack源码中也是使用了大量的内部插件,插件要是用的好,可以让你的工作 ...
- webpack插件之webpack-dev-server
webpack插件之webpack-dev-server webpack插件 自动化 webpack-dev-server 现在只需要使用 npm run build指令就可以自动打包,并自动处理好 ...
随机推荐
- SVM支持向量机(1)
一.SVM模型 1.函数间隔与几何间隔,哪一条线是最好的? (1)公式化问题. 分类模型:当里面的值小于0的时候就是-1,当里面的值是大于等于0的时候就是1 函数间隔:前面乘以y(i),是为了保持数值 ...
- git常用命令之log
查看提交日志记录 基础命令: git log commit ca82a6dff817ec66f44342007202690a93763949 Author: Scott Chacon < ...
- 处理webp加所有的jpg到指定路径
#!/bin/shfunction getdir(){compareName='.webp';for element in `ls $1`dodir_or_file=$1"/"$e ...
- C++线程同步 -- windows
简介: 在一般情况下,创建一个线程是不能提高程序的执行效率的,所以要创建多个线程.但是多个线程同时运行的时候可能调用线程函数,在多个线程同时对同一个内存地址进行写入, 由于CPU时间调度上的问题,写入 ...
- 【转】js监听浏览器离开页面操作
[转]https://www.cnblogs.com/slly/p/7991474.html 序言 大家是否经常遇到在关闭网页的时候,会看到一个确定是否离开当前页面的提示框?想一些在线测试系统.信息录 ...
- 集合综合练习<二>
package com.JiHeTotal; import java.util.Map; public class Student { int id; String name; Map<Stri ...
- Delphi---ShellExecute跨进程调用exe
测试环境:Delphi7 + Win7 发起端 unit uRequest; interface uses Windows, Messages, SysUtils, Variants, Classes ...
- NSMutableArray修改替换某个位置的元素
使用NSMutableArray的replaceObjectAtIndex方法.
- SonarQube 7.7默认数据库连接方法
SonarQube7.7默认数据库为H2 embbed数据库 连接字符串:jdbc:h2:tcp://localhost:9092/sonar 用户名密码都为空
- npm 和 cnpm 区别
来源:https ://blog.csdn.net/shelly1072/article/details/51524029 NPM介绍: 说明:NPM(节点包管理器)是的NodeJS的包管理器,用于节 ...