webpack 保存文件后自动打包_自动打包插件webpack-dev-server的安装、配置及使用

2023-11-11

1、介绍:

webpack-dev-server插件可以实现Webpack的自动打包编译

这样 就不需要每次修改完代码都重新手动输入webpack打包了

2、安装:

在项目的根路径下输入:cnpm i webpack-dev-server -D 将插件安装到项目的本地开发依赖中

该工具的用法和webpack命令的用法完全一致 直接输入命令即可自动监听

在项目中本地安装的webpack-dev-server无法作为脚本命令直接运行

因此 需在package.json中进行配置:

3、使用:

配置之后 输入npm run dev运行 默认启动在8080端口:

注:webpack-dev-server若要正常运行 必须在项目的本地安装webpack(即使安装了全局的也不行)

启动之后 每次Ctrl+s保存JS代码 webpack-dev-server都会自动重新编译:

此时 访问8080端口 显示的是项目根目录下的所有文件和文件夹 因为默认托管的目录就是项目根目录

在页面里若要访问打包好的bundle.js 直接通过/bundle.js访问即可 前面无需带上域名:

该bundle.js是自动生成的 且会自动随着代码改变重新编译

页面中引入了该/bundle.js之后 每次保存js代码 无需手动刷新浏览器页面即可显示最新效果

Document
  • 1
  • 2
  • 3
  • 4

webpack-dev-server打包生成的bundle.js文件并没有存放到实际的物理磁盘上 而是直接托管到了内存中

因此 在项目的根目录中是找不到该bundle.js的

可以认为webpack-dev-server在项目根目录下放置了一个虚拟的bundle.js

因为 物理磁盘会有转速的限制 若托管到内存 速度会比在物理磁盘快很多

4、常用参数的配置

配置方式一:在package.json中追加参数

(推荐此配置方式 比配置方式二更加简便)

webpack-dev-server打包完毕后自动打开浏览器:

在package.json脚本配置中的webpack-dev-server后加上--open

修改服务器端口号:

在package.json脚本配置中的webpack-dev-server后加上--port 端口号

指定进入服务器后默认访问路径:

在package.json脚本配置中的webpack-dev-server后加上--contentBase 路径

开启热重载:

未配置热重载之前 打包是重新生成整份的JS文件

而热重载会生成变动的代码的补丁 对原本的JS文件进行局部更新 减少不必要的代码更新

且开启热重载之后 可实现CSS样式修改时 页面的无刷新更新(异步)

在package.json脚本配置中的webpack-dev-server后加上--hot

配置方式二:在webpack.config.js中配置

若在该配置方式里要开启热重载的话 配置方式分成三步:

1、导入webpack模块

2、在webpack-dev-server配置对象中开启热重载

3、在插件节点中创建热重载的模块对象

因而 相比较而言 更推荐使用配置方式一

const path=require("path")

// 导入webpack模块 - 启用热重载的第一步

const webpack=require("webpack")

module.exports={

entry:path.join(__dirname,"./src/main.js"),

output:{

path:path.join(__dirname,"./dist"),

filename:"bundle.js"

},

// 配置webpack-dev-server的配置对象

devServer:{

open:true, // 自动打开浏览器

port:8888, // 设置启动时的运行端口

contentBase:"src", // 指定进入服务器后默认访问路径

hot:true // 启用热重载的第二步

},

// 配置插件节点

plugins:[

// 创建一个热重载的模块对象 - 启用热重载的第三步

new webpack.HotModuleReplacementPlugin()

]

}

标签:插件,配置,dev,js,webpack,重载,server

来源: https://blog.csdn.net/Piconjo/article/details/105726663

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

webpack 保存文件后自动打包_自动打包插件webpack-dev-server的安装、配置及使用 的相关文章

  • Linus命令大全

    Linus命令是Linux操作系统中的一些常用命令 下面是一些常用的Linus命令 ls 用于显示当前目录中的文件和目录 cd 用于切换当前目录 pwd 显示当前目录的路径 mkdir 创建新目录 rm 删除文件或目录 cp 复制文件或目录
  • MoveIt入门之——使用MoveIt配置助手生成MoveIt配置文件

    一 安装MoveIt assistant sudo apt get install ros kinetic moveit 如果报错说找不到软件包 可能是没有更新源 只要去roswiki上找安装教程 把源重新加入就可以了 二 打开配置助手 r
  • npm ERR! code EPERM npm ERR! syscall unlink npm ERR!错误解决方法

    npm ERR code EPERM npm ERR syscall unlink npm ERR 错误解决方法 1 问题描述 2 解决方法 1 问题描述 由于之前电脑系统的原因 电脑重置了一下 之前安装的环境都没了 然后在重新安装node
  • 架构之重构的 12 条军规

    注 架构之重构的 12 条军规 上 发布以后 一些读者着急要下篇 所以在这里我把上下篇合并成一篇 让大家可以阅读完整版 不用分开看了 对于开发者来说 架构设计是软件研发过程中最重要的一环 所谓没有图纸 就建不了房子 在遍地 App 的互联网
  • 自学Python能做什么副业?通过这篇文章一起来看看

    很多小伙伴想在业余的时间自学一下python语言 但是又不知道python能够给自己带来什么 那么小编就通过这篇文章来和大家一起说说python学会了能做哪些副业 一 兼职处理数据 在目前的万物互联的时代下 越来越多的人离不开电脑 手机的办
  • 爬虫中的大哥大-scrapy框架介绍

    文章适合于所有的相关人士进行学习 各位看官看完了之后不要立刻转身呀 期待三连关注小小博主加收藏 小小博主回关快 会给你意想不到的惊喜呀 文章目录 scrapy介绍及安装 创建项目 创建爬虫 注意 如何运行 scrapy爬虫实战 1 sett
  • VMWare安装Ubuntu18时卡住

    VMWare安装Ubuntu18时卡住 今天安装Ubuntu时发现一直卡在 Started Network Manager Script Dispatcher Service 或者Mounting 的地方 由于点击安装之后没看 过了2小时看
  • Spring中获取Bean对象的三种注入方式和两种注入方法

    目录 前言 获取Bean对象的三种注入方式 属性注 构造 法注 Setter 注 属性注 构造 法注 和Setter 注 有什么区别呢 两种注入方法 Autowired 和 Resource Autowired 和 Resource 有什么
  • vue3 vite sass样式大量重复

    在vite config ts中配置 css preprocessorOptions 导入scss预编译程序 scss additionalData import assets scss variables scss import asse
  • Linux下修改IP、DNS、路由命令行设置

    一 快速修改 重启后设置就没了 ifconfig eth0 192 168 1 22 netmask 255 255 255 0 up route add default gw 192 168 1 2 二 修改配置文件 重启设置还在 一 u
  • LeetCode-2373. 矩阵中的局部最大值【矩阵,数组】

    LeetCode 2373 矩阵中的局部最大值 矩阵 数组 题目描述 解题思路一 原地修改 首先将每个3 3的矩阵的最大值存放在左上角的点 然后修改给的grid矩阵的大小 解题思路二 暴力 申请一个数组 解题思路三 0 题目描述 给你一个大
  • java8中常用函数式接口Supplier<T>、Consumer<T>、Function<T,R>、Predicate<T>使用示例

    场景 函数式接口 Functional Interface 就是一个有且仅有一个抽象方法 但是可以有多个非抽象方法的接口 而java中的函数式编程体现就是Lambda 所以函数式接口就是可以适用于Lambda使用的接口 下面介绍四个常用的函
  • 热议话题

    这两天在平台上看见了一个有趣的问题 为什么医生 律师 教师等传统职业都是越老越吃香 不出意料 这个问题的浏览量非常高 下面回答众说纷纭 但让我印象深刻的还是下面这个回答 犀利而真实 作为声名远扬的高薪职业 程序员相关话题一直是焦点 如 薪资
  • Macos下重置MySQL密码

    环境信息 Macos Catalina 10 15 7 19H2 MySQL 8 0 22 问题 忽然一段时间忘记了MySQL数据库的密码 登录不上去了 该如何办呢 预想中的路径 mysqld safe skip grant tables
  • 转载:电缆种类及选型计算

    电缆种类及选型计算一 电缆的定义及分类 广义的电线电缆亦简称为电缆 狭义的电缆是指绝缘电缆 它可定义为 由下列部分组成的集合体 一根或多根绝缘线芯 以及它们各自可能具有的包覆层 总保护层及外护层 电缆亦可有附加的没有绝缘的导体 我国的电线电
  • dockerfile制作各应用镜像实例

    目标 例如 记录 dockerfile制作各应用镜像实例代码 应用实例 搭建jar应用程序docker容器 Dockerfile文件 FROM java 8 MAINTAINER 126 126 net COPY automation 1
  • NuajWeatherSystem实现昼夜更替

    实现昼夜交替以及纬度变化 还有影响灯光的变化的Unity 3d插件 链接 http pan baidu com s 1mhFZa8w 密码 y3v1
  • gitlab帮助文档

    SSH keys An SSH key allows you to establish 建立 a secure connection between your computer and GitLab Before generating an
  • 项目1——博客系统

    一 绪言 今天又来更新博文了 学习Java也已经有一段时间了 经过这段时间的学习 我对Java有了更深一层的理解 从刚开始的HelloWorld到了现在的小型网页项目 这中间也经历了很多 话不多说 下面开始我的项目阐述 由于是第一次做 必然

随机推荐

  • Java实现对称加密算法-AES加解密

    AES Advanced Encryption Standard 意思是高级加密标准 是一种区块加密标准 这个标准用来替代原先的DES 且已经被广泛使用 DES使用56位密钥 所以比较容易被破解 AES可以使用128 192 和256位密钥
  • Linux CentOS7常用命令2(文件与目录)

    Linux常用命令2 一 Linux目录结构 二 命令学习 一 查看文件命令 cat 二 查看文件内容 more 四 查看文件内容 head tail命令 五 统计文件内容命令 wc 六 检索和过滤文件内容命令 grep 七 压缩命令 gz
  • 【AMD、CMD和CommonJS】

    CommonJS规范的特点 对于基本数据类型 属于复制 即会被模块缓存 同时 在另一个模块可以对该模块输出的变量重新赋值 对于复杂数据类型 属于浅拷贝 由于两个模块引用的对象指向同一个内存空间 因此对该模块的值做修改时会影响另一个模块 当使
  • Java异常分类总结

    在Java中 所有的异常都有一个共同的祖先Throwable 可抛出 类 Throwable指定代码中可用异常传播机制通过Java应用程序传输的任何问题的共性 Throwable有两个重要的子类 Exception 异常 和Error 错误
  • LeetCode-1792. 最大平均通过率【堆,优先队列,贪心】

    LeetCode 1792 最大平均通过率 堆 优先队列 贪心 题目描述 解题思路一 优先队列 首先任何一个班级 x y 加入一个聪明的学生之后增加的通过率为diff x 1 y 1 x y 那么对p进行堆排序 每次取最大的即可 解题思路二
  • Excel打开后关闭就马上跳出 Visual c++ Runtime Error R6025

    环境 Win10 专业版 Excel 2016 绿盾加密环境 问题描述 Excel打开后关闭就马上跳出 visual c runtime error R6025 runtime error program c program files m
  • KVM和QEMU

    原文地址 KVM和QEMU 作者 embeddedlwp 目录 1 硬件虚拟化技术背景 2 KVM的内部实现概述 2 1 KVM的抽象对象 2 2 KVM的vcpu 2 3 KVM的IO虚拟化 2 3 1 IO的虚拟化 2 3 2 Virt
  • jdk1.8.191 JVM内存参数 InitialRAMPercentage和MinRAMPercentage

    MaxRAMPercentage InitialRAMPercentage MinRAMPercentage 这三个参数是JDK8U191为适配Docker容器新增的几个参数 类比Xmx Xms 至于 XX InitialRAMFracti
  • 物联网安全概述

    什么是物联网 在你学习有关IPv6的时候 你的老师或许说过 有一天在你的房子每个设备都会有一个IP 物联网基本上就是处理每天的事务 并把它们连接到互联网上 一些常见的物联网设备 如灯光 窗帘 空调 也有像冰箱这样的不太常见的设备 甚至一个卫
  • [sicily] 1003. 相连的1

    声明 原题目转载自中山大学sicily平台 解答部分为原创 Problem 对于一个01矩阵A 求其中有多少片连成一片的1 每个1可以和上下左右的1相连 请为下面的Solution类实现解决这一问题的函数countConnectedOnes
  • 聚合支付行业术语,你get到了吗?

    俗话说 内行看门道外行凑热闹 每一个行业都有它独特的专业术语 对于外行人来说 这些专业术语就跟专有名词一样难懂 支付行业也是一样 因为是近几年的新兴行业 很多人对这一行不懂 甚至一些在支付行业工作的人 对这一行的很多名词概念也很模糊 认知仅
  • 基础篇(二):内存屏障是什么

    目录 前置知识 内存屏障 什么是内存屏障 作用 内存屏障的分类 1 强制读取 刷新主内存的屏障 强制刷新主内存 Load屏障 强制读取主内存 Store屏障 总结 2 禁止指令重排序的屏障 LoadLoad屏障 StoreStore屏障 L
  • 怎么修改游戏内存服务器,修改游戏服务器内存

    修改游戏服务器内存 内容精选 换一换 当您成功创建私有镜像后 镜像的状态为 正常 您可以使用该镜像创建服务器实例或云硬盘 也可以将镜像共享给其他帐号 或者复制镜像到其他区域 私有镜像的生命周期如图1所示 通过华为云创建的ECS服务器默认使用
  • mysql客户端小海豚_MySQL基础

    1 数据库概述 1 1数据的存储方式 第一种存储方式是创建对象 实际上new出来的对象不就是用来存数据的嘛 创建对象就是在堆内存中为对象请求了一个空间 相当于是将对象存入堆内存 第二种方式存文件中 这个在IO流部分我们就是这么处理的 但是缺
  • Python批量改文件名

    对以下路径中的文件名批量修改 文章目录 一 读取指定路径中的文件名 二 正则表达式提取需要保留的部分 1 介绍re库 2 re库中函数的用法 1 re findall 最常用 2 re sub pattern repl string cou
  • 数仓知识点

    传统数仓知识 1 数据仓库分层 ODS 数据准备层 该区为数据仓的准备区 直接输入源数据 如业务库 埋点日志和消息队列等 DWD 数据细节层 该层为业务层和数据层的隔离层 保持和ODS层相同的颗粒度 该层还进行了数据清洗和规范化操作 例如去
  • 阿里巴巴笔试-2020.7.27-第二题 藏宝架

    题目 有个藏宝架有n层 每层的宝物数量不一 每个宝物都有其价值 现在要求拿出m个宝物 并且需要遵守规则 每次只能拿选定层的两端的宝物 要拿出的m个宝物的总价值是各种方案里最大的 输入 第一行是 n 和 m 后面每一行是各层的数据 n m 下
  • WebSocket 基于JAVA Spring boot Spring Colud 的使用

    先上代码再看调试结果 package com qiang user util import com alibaba fastjson JSONObject import org springframework stereotype Comp
  • 软考网络工程师-最新最全小白攻略

    一 前言 最近Beau 博主本人 也是考取了2023年上半年的软考网络工程师 这里也准备给小白们做一些避坑流程 这里附上通过图 二 考前准备 1 报考条件 无 无年龄 资质 学历限制 无需通过软考初级才能报考 是中国守法公民即可报名 2 考
  • webpack 保存文件后自动打包_自动打包插件webpack-dev-server的安装、配置及使用

    1 介绍 webpack dev server插件可以实现Webpack的自动打包编译 这样 就不需要每次修改完代码都重新手动输入webpack打包了 2 安装 在项目的根路径下输入 cnpm i webpack dev server D