Webpack部署本地服务器

Webpack部署本地服务器

目录

  • Webpack部署本地服务器
    • 目的
    • 认识模块热替换(HMR)
      • 什么是 HMR
      • HMR 通过如下几种方式, 来提高开发的速度
      • 如何使用 HMR
      • host 配置


目的

完成自动编译
常用方式: webpack-dev-server

webpack-dev-server 是一个用于开发环境的 Web 服务器,它集成了 Webpack,并提供了实时重新加载和热替换等功能。以下是一个简单的 webpack-dev-server 配置和使用示例:

  1. 首先,确保已经安装了 webpack, webpack-cliwebpack-dev-server。如果没有安装,可以使用以下命令进行安装:
npm install --save-dev webpack webpack-cli webpack-dev-server -D   // 开发环境
  1. 在项目根目录下创建一个名为 webpack.config.js 的文件,用于存放 Webpack 配置信息:
const path = require('path');module.exports = {entry: './src/index.js',output: {filename: 'main.js',path: path.resolve(__dirname, 'dist'),},devServer: {contentBase: path.join(__dirname, 'dist'),// 是否为静态文件开启 gzip compression 默认是falsecompress: true,port: 9000,// open 是否打开浏览器, 默认是 false open: true,hot: true,},
};

这个配置文件定义了入口文件为 src/index.js,输出文件为 dist/main.js,并配置了 webpack-dev-server 的相关参数。

  1. 在项目的 package.json 文件中添加一个启动脚本:
{"scripts": {"serve": "webpack serve"}
}
  1. 现在,可以通过运行 npm run serve 命令来启动 webpack-dev-server。服务器将在端口 9000 上启动,并在默认浏览器中打开 http://localhost:9000。当你对 src/index.js 文件进行更改时,服务器将自动重新加载和热替换。

认识模块热替换(HMR)

什么是 HMR

 HMR的全称是Hot Module Replacement,翻译为模块热替换;
 模块热替换是指在 应用程序运行过程中,替换、添加、删除模块,而无需重新刷新整个页面;

HMR 通过如下几种方式, 来提高开发的速度

 不重新加载整个页面,这样可以保留某些应用程序的状态不丢失;
只更新需要变化的内容,节省开发的时间;
修改了css、js源代码,会立即在浏览器更新,相当于直接在浏览器的devtools中直接修改样式;

如何使用 HMR

默认情况下,webpack-dev-server已经支持HMR,我们只需要开启即可**(默认已经开启);**
在不开启HMR的情况下,当我们修改了源代码之后,整个页面会自动刷新,使用的是live reloading;

host 配置

◼ host设置主机地址:
 默认值是localhost;
 如果希望其他地方也可以访问,可以设置为 0.0.0.0;
port、open、compress
port设置监听的端口,默认情况下是8080
◼ open是否打开浏览器:
 默认值是false,设置为true会打开浏览器;
 也可以设置为类似于 Google Chrome等值;
◼ compress是否为静态文件开启gzip compression:
 默认值是false,可以设置为true;
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/771306.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

动态规划,二维DP

文章目录 1、摆花2、异或选数3、数字三角形 1、摆花 分析: 输入2 4 3 2 的情况下,只有 (2,2) , (3,1) 这两种方案。 所以,设置状态 dp[i][j] 表示到第 i 种花(共 n 种花)、第 j 个位置(共 m 个位置&#xf…

python开发——Python函数中的函数传参

前言 在编写函数时,经常希望函数接口更加灵活,可以支持默认参数、可变参数、关键字参数等特性。下面将详细介绍这些函数传参的使用方法。 1. 常规参数 在 Python 中,函数的传参是一种简单直接的过程,例如: def tes…

Leetcode算法题笔记(2)

目录 图论51. 岛屿数量解法一 52. 腐烂的橘子解法一 53. 课程表解法一 54. 实现 Trie (前缀树)解法一 回溯55. 全排列解法一 56. 子集解法一解法二 57. 电话号码的字母组合解法一 58. 组合总和解法一解法二 59. 括号生成解法一解法二 60. 单词搜索解法一 61. 分割回文串解法一 …

能否把 Redis 当做消息队列来用呢?

这个问题并不是面试中经常会问到的问题,而是我在平时看一些大牛写的技术文章的时候看到的一个问题,这个问题引发了我强烈的思考,我感觉我想通了这个问题之后,对redis和kafka都有了一个全新的认识,感觉像发现了新大陆这…

简明 Python 教程(第6章 模块)

模块是Python中组织代码的一种方式,它允许开发者将代码分解为可重用的单元,便于管理和维护。开发者可以有效地利用Python的模块系统来构建复杂的应用程序。模块是一个包含Python定义和声明的文件,文件名就是模块名加上.py扩展名。模块可以包含…

python的数据容器通用操作

常用方法 len统计个数 max最大元素 min最小元素 my_list[1,2,3,4,5] my_tuple(1,2,3,4,5) my_str"abcdefg" my_set{1,2,3,4,5} my_dict{"key1":1,"kye2":2,"key3":3,"key4":4,"key5":5}print(f"列表 元素个…

[Netty实践] 请求响应同步实现

目录 一、介绍 二、依赖引入 三、公共部分实现 四、server端实现 五、client端实现 六、测试 一、介绍 本片文章将实现请求响应同步,什么是请求响应同步呢?就是当我们发起一个请求时,希望能够在一定时间内同步(线程阻塞&am…

FPGA高端项目:解码索尼IMX327 MIPI相机转HDMI输出,提供FPGA开发板+2套工程源码+技术支持

目录 1、前言2、相关方案推荐本博主所有FPGA工程项目-->汇总目录我这里已有的 MIPI 编解码方案 3、本 MIPI CSI-RX IP 介绍4、个人 FPGA高端图像处理开发板简介5、详细设计方案设计原理框图IMX327 及其配置MIPI CSI RX图像 ISP 处理图像缓存HDMI输出工程源码架构 6、工程源码…

Java中SPI机制简单演示

Java中SPI机制简单演示 写一个SpiService接口 public interface SpiService {void run();}写两个实现类,注意:实现类可以跨包 Slf4j public class SpiServiceImpl1 implements SpiService {Overridepublic void run() {log.warn("SpiServiceImpl…

简单破除github的2FA验证

简单破除github的2FA验证 文章目录 简单破除github的2FA验证👨‍🏫Authenticator工具 👨‍🏫Authenticator工具 最近使用github的时候发现要搞一个2FA的验证才可以 验证的途径有两种:一种是用手机电话验证,…

使用easyYapi生成文档

easyYapi生成文档 背景1.安装配置1.1 介绍1.2 安装1.3 配置1.3.1 Export Postman1.3.2 Export Yapi1.3.3 Export Markdown1.3.4 Export Api1.3.6 常见问题补充 2. java注释规范2.1 接口注释规范2.2 出入参注释规范 3. 特定化支持3.1 必填校验3.2 忽略导出3.3 返回不一致3.4 设置…

关于JavaScript常用命令

JS(JavaScript)是一种用于构建交互式网页的脚本语言,常用于前端开发。以下是一些常用的JS命令及其简要说明,希望能够帮助您更好地了解JS的基础知识。 1. **变量声明与赋值** - var, let, const: 用于声明变量,var在…

第二证券|高速连接概念再度活跃,沃尔核材5日涨近60%,胜蓝股份等走高

高速连接概念26日盘中再度走强,到发稿,胜蓝股份涨超13%,沃尔核材涨停,华丰科技、奥飞数据涨超5%。 值得注意的是,沃尔核材近5个交易日已收成4个涨停板,累计大涨近60%。公司近来在投资者互动平台表示&#…

Disruptor消费线程等待策略

以下按等待最快到最慢策略排序 BusySpinWaitStrategy BusySpinWaitStrategy相当于while(true)不停的轮询,跑动起来会迅速把CPU打满,适合延迟要求苛刻的业务场景,但是缺点是非常吃CPU YieldingWaitStrategy 轮询完成使用yield函数让出CPU资…

宽光谱SOA光芯片设计(一)

-本文翻译自由Geoff H. Darling于2003年撰写的文章。尽管文章较早,但可以了解一些SOA底层原理,并可看到早期SOA研究的思路和过程,于今仍有很高借鉴价值。 摘要 本文介绍一种新型宽光谱半导体光放大器(SOA)技术&#x…

【数据分享】中国土壤有机质数据集(免费获取)

中国土壤有机质数据集对于农业、生态环境保护等领域具有重要意义。通过对土壤有机质等多项指标的统计和分析,可以更好地了解土壤的特性,指导合理的土壤管理和保护措施的制定,从而促进农业生产的可持续发展,并为生态环境保护提供科…

数据结构与算法之美学习笔记:《数据结构与算法之美》学习指导手册

目录 前言 前言 本节课程思维导图: 在设计专栏内容的时候,为了兼顾不同基础的同学,我在内容上做到了难易结合,既有简单的数组、链表、栈、队列这些基础内容,也有红黑树、BM、KMP 这些难度较大的算法。但是,…

利用云手机高效运营多个海外社媒账户

随着全球化进程的不断推进,中国出海企业和B2B外贸企业日益重视海外社媒营销,将其视为抢占市场份额的关键策略。在海外社媒营销中,企业通常会在多个平台上批量开通账户,搭建自己的社媒内容矩阵。本文将会介绍如何用云手机高效运营多…

格雷希尔G25F系列快速接头,在新能源电池包气密性测试时的各种电气接插件的应用

一些大的新能源电池制造商如:比亚迪、宁德时代、国轩高科、亿纬锂能、东方时代等,在全球的新能源电池市场上占据着重要的地位。新能源PACK电池包在生产时,需要经过一些严苛的测试,用以检测产品的品质是否达到合格标准,…

基于React的低代码平台开发实践

💂 个人网站:【 摸鱼游戏】【神级代码资源网站】【工具大全】🤟 一站式轻松构建小程序、Web网站、移动应用:👉在线地址🤟 基于Web端打造的:👉轻量化工具创作平台💅 想寻找共同学习交…