网站首页 > 技术文章 正文
前言:
通过前面的学习,已经知道如何打包js和json文件,
也了解了如何配置打包样式文件的loader
但是之前我们都是手动的创建html,并且手动的引入打包后的js文件,这样会有一定的不便,
因此接下来就一起看看webpack是如何处理html文件的
1. 安装使用处理html的插件
说明:
- webpack打包html文件资源,不是使用loader而是使用插件
- 使用html-webpack-plugin插件自动生成html文件
1.1 下载插件
yarn add html-webpack-plugin -D
1.2 配置插件
在webpack.config.js中配置插件说明
- 引入下载好的插件
- 在plugins中配置插件
代码如下:
// 1. 引入处理html插件,
const HtmlWebpackPlugin =
require("html-webpack-plugin")const {resolve} = require("path");module.exports = {
entry: "./src/main.js",
output:{
filename:"bundle.js",
path: resolve(__dirname,"dist")
},
module: {
rules:[
{
test: /\.css$/,
use:["style-loader","css-loader"]
}
]
},
// 配置插件
plugins:[
// 配置 处理html插件
new HtmlWebpackPlugin()
],
mode:"development"}
1.3 打包结果说明
通过webpack命令打包
- 会发现打包后的index.html是一个空的html文件 ,没有其他结构内容
- 因为插件html-webpack-plugin是自动创建一个新的html文件,并自动引入bundle.js
- 因此我们自己开发的index.html内容并没有处理到打包后的html文件中
配置代码如下:
const HtmlWebpackPlugin =
require("html-webpack-plugin")const {resolve} = require("path");module.exports = {
// ...
plugins:[
new HtmlWebpackPlugin({
// 配置html打包模板
template:"./src/main.html"
})
]
// ...}
2. 将我们自己写html内容插入打包后的html文件
2.1 说明
- src文件夹使我们开发文件夹,因此我们可能会在这个文件夹中开发html文件内容
- 但是html-webpack-plugin会在打包的dist目录中生成新的html文件,
- 新生成的文件中,不包含我们开发的html文件内容
- 如果我们需要将自己开发的html内容也插入到打包后的html文件中,就需要配置
2.2 在src文件中新建html,并开发内容
<body>
<div>Hello World</div></body>
2.3 在webpack.config.js配置插件
在webpack.config.js的插件html-webpack-plugin中配置html模板
将我们开发的html文件中的内容插入到plugin生成的html文件中
代码如下:
const HtmlWebpackPlugin =
require("html-webpack-plugin")const {resolve} = require("path");module.exports = {
// ...
plugins:[
new HtmlWebpackPlugin({
// 配置html打包模板
template:"./src/main.html"
})
]
// ...}
此时,打包后, 查看dist目录中index.html文件中就拥有了我们开发的内容
3. 配置本地webpack
3.1 为什么需要配置本地webpack
- webpack版本的不同,可能会对项目造成影响
- 项目是多人协同开发,如果每一个人电脑都全局安装不同的webpack,会导致项目配置出问题
- 因此需要配置项目本地webpack,以及配置脚本运行webpack命令
3.2 下载配置本地webpack
下载本地webpack
$ yarn add webpack webpack-cli -D
3.3 配置脚本命令
配置脚本命令使用webpack打包说明
- 在所有的终端里使用webpack命令,默认都是全局安装的webpack
- 项目为了保证统一,需要使用项目本地webpack进行打包
- 脚本中运行的webpack是使用本地webpack命令
在package.json中配置脚本命令
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"build": "webpack"
},
配置完成以后就可以使用npm run build命令来使用本地webpack了
猜你喜欢
- 2024-10-05 「前端」HTML之结构(html前端技术)
- 2024-10-05 如何彻底搞懂 Java 数据结构?|CSDN 博文精选
- 2024-10-05 Vue实战081:多HTML标签元素如何实现并排显示详解
- 2024-10-05 织梦系统后台更新主页html选项为空的解决方法
- 2024-10-05 HTML基础的 标签(html标签及作用)
- 2024-10-05 html页面结构(html页面结构分析)
- 2024-10-05 边学边做网页篇------初识HTML(html网页在线制作)
- 2024-10-05 前端必备,20个CSS小技巧(前端css是什么意思)
- 2024-10-05 前端面试题《html和css部分》(web前端css面试题)
- 2024-10-05 css实现div两列布局(两种方法)(html两列布局)
- 08-03MySQL数据库的预处理详解
- 08-03《阿常·MySQL 70讲》全套教学视频
- 08-03隐式等待、显示等待和强制等待
- 08-03零基础C#上位机框架项目实例(完结篇)
- 08-03一文搞懂构建Web内容的技术
- 08-03西门子WINCC中的VBScript(VBS)常用于自动化脚本开发
- 08-03力控和sql2000之间的数据转储
- 08-03组态王|通过日历控件选择时间段查询历史报警
- 1521℃桌面软件开发新体验!用 Blazor Hybrid 打造简洁高效的视频处理工具
- 632℃Dify工具使用全场景:dify-sandbox沙盒的原理(源码篇·第2期)
- 527℃MySQL service启动脚本浅析(r12笔记第59天)
- 492℃服务器异常重启,导致mysql启动失败,问题解决过程记录
- 492℃启用MySQL查询缓存(mysql8.0查询缓存)
- 479℃「赵强老师」MySQL的闪回(赵强iso是哪个大学毕业的)
- 461℃mysql服务怎么启动和关闭?(mysql服务怎么启动和关闭)
- 458℃MySQL server PID file could not be found!失败
- 最近发表
- 标签列表
-
- cmd/c (90)
- c++中::是什么意思 (84)
- 标签用于 (71)
- 主键只能有一个吗 (77)
- c#console.writeline不显示 (95)
- pythoncase语句 (88)
- es6includes (74)
- sqlset (76)
- windowsscripthost (69)
- apt-getinstall-y (100)
- node_modules怎么生成 (87)
- chromepost (71)
- flexdirection (73)
- c++int转char (80)
- htmlbackground-image (68)
- static函数和普通函数 (76)
- el-date-picker开始日期早于结束日期 (70)
- asynccallback (71)
- localstorage.removeitem (74)
- vector线程安全吗 (70)
- java (73)
- js数组插入 (83)
- mac安装java (72)
- 查看mysql是否启动 (70)
- 无效的列索引 (74)