Webpack部署本地服务器

Webpack部署本地服务器

目录


目的

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

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

  1. 首先,确保已经安装了 webpack, webpack-cli 和 webpack-dev-server。如果没有安装,可以使用以下命令进行安装:
bash 复制代码
npm install --save-dev webpack webpack-cli webpack-dev-server -D   // 开发环境
  1. 在项目根目录下创建一个名为 webpack.config.js 的文件,用于存放 Webpack 配置信息:
javascript 复制代码
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 默认是false
    compress: true,
    port: 9000,
    // open 是否打开浏览器, 默认是 false 
    open: true,
    hot: true,
  },
};

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

  1. 在项目的 package.json 文件中添加一个启动脚本:
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;

相关推荐
qq_4017004116 分钟前
Linux设备树详解
linux·运维·服务器
刚入门的大一新生1 小时前
Linux-信号
linux·运维·服务器
米米商聊2 小时前
同名附件为什么被 Map 覆盖?重复键与一对多索引
前端·javascript
echome8883 小时前
Python 异常处理:try、else、finally 的正确搭配
开发语言·前端·python·异常处理·编程技巧
时间的情敌3 小时前
OpenLayers 实战|Vue3 + OpenLayers 完整工程案例(加载天地图、要素、弹窗、绘制、WFS)
前端·openlayers
陈随易3 小时前
下载神器!Motrix 停更三年后重写回归
前端·后端·程序员
前端的日常4 小时前
一个人+AI做情侣食谱小程序,0 费用的服务器
前端·后端
计算机魔术师4 小时前
谷歌搜索广告踩刹车,AI广告成为救命稻草
前端
总要学点什么4 小时前
第81篇:数据可视化-PM2.5分布——让圆点的胖瘦替每座城市报出浓度
前端·信息可视化·echarts·cesium·空间分析
IT_陈寒4 小时前
Vue的v-for里用了个临时变量,页面直接挂了
前端·人工智能·后端