好家伙,

1.webpack中的默认约定

默认的打包入口文件为src  -->index.js

默认的输出文件路径为dist -->main.js

既然有默认,那么就说明肯定能改

2.entry和output

在webpack.config.js配置文件中,

  通过entry节点指定打包的入口。

  通过output节点指定打包的出口。

示例代码如下:

const path = require('path')// 导入 node.js 中专门操作路径的模块,这里的path是node的一个模块

module.exports ={
entry: path.join(_dirname, './src/index.js'),// 打包入口文件的路径 output:{   path: path.join(_dirname, './dist'), // 输出文件的存放路径,这里的path是一个属性   filename: 'bundle.js'//输出文件的名称
}
}

3.webpack 插件安装

现在问题来了

如果我要改index.js中的内容(就算只是改一两行代码),也必须改完内容后保存,再打包,

多次更改下来,显得整个过程显得非常繁琐

有没有什么好的解决办法?

使用webpack插件

3.1.安装方法:

终端跑一下啦:

npm install webpack-dev-server@3.11.2 -D

3.2.webpack 插件的作用

通过安装和配置第三方的插件,可以拓展webpack的能力,从而让webpack用起来更方便。

3.3.最常用的webpack插件有如下两个:


① webpack-dev-servert 

类似于node.js 阶段用到的 nodemon 工具

每当修改了源代码,webpack会自动进行项目的打包和构建

② html-webpack-plugin

webpack中的HTML插件(类似于一个模板引擎插件)


可以通过此插件自定制 index.html页面的内容

 

4.配置webpack-dev-server

① 修改 package.json->scripts 中的dev 命令,如下:

 "scripts": {
"dev": "webpack serve", // script 节点下的脚本,可以通过 npm run 执行
}

②再次运行npm run dev 命令,重新进行项目的打包


③在浏览器中访问 http://localhost:8080地址,查看自动打包效果

(出现了!!出现了!!是"http://localhost:8080"!!!)

注意:webpack-dev-server 会启动一个实时打包的 http 服务器

(像之前写vue项目一样,ctrl+s一次他就更新一次,终端处于监视的状态,监视代码的更新)

于是就解决每次修改代码都需要重新打包的问题了

That's all

溜了溜了

"黑马程序员"NB

第四十八篇:webpack的基本使用(二) --安装和配置webpack-dev-server插件的更多相关文章

  1. 第四十七篇:webpack的基本使用(一) --安装和配置webpack

    好家伙, 1.webpack的基本使用 写个例子:实现一个奇偶行变色列表 步骤如下: ① 新建项目空白目录,并运行 npm init-y命令,初始化包管理配置文件 package.json② 新建sr ...

  2. C++第四十八篇 -- 字符串分离方法

    举例:Test_Bluetooth.exe -param_split Test_Bluetooth.cpp #include "pch.h" #include <iostre ...

  3. Python开发【第十八篇】:MySQL(二)

    视图 视图是一个虚拟表(非真实存在),其本质是[根据SQL语句获取动态的数据集,并为其命名],用户使用时只需使用[名称]即可获取结果集,并可以将其当作表来使用. SELECT * FROM ( SEL ...

  4. hihoCoder hiho一下 第四十八周 题目1 : 拓扑排序·二

    题意: 给定一个拓扑图,其中部分结点含有1个病毒,每个结点只要收到病毒就会立即往出边所能到达的点传播,病毒数可叠加,求所有结点的病毒数总和. 思路: 根据拓扑的特点,每个入度为0的点肯定不会再被传播病 ...

  5. 第十八篇 Linux环境下常用软件安装和使用指南

          提醒:如果之后要安装virtualenvwrapper的话,可以直接跳到安装virtualenvwrapper的方法,而不需要先安装好virtualenv   安装virtualenv和生 ...

  6. 《手把手教你》系列技巧篇(四十八)-java+ selenium自动化测试-判断元素是否可操作(详解教程)

    1.简介 webdriver有三种判断元素状态的方法,分别是isEnabled,isSelected 和 isDisplayed,其中isSelected在前面的内容中已经简单的介绍了,isSelec ...

  7. Python之路【第十八篇】:Web框架们

    Python之路[第十八篇]:Web框架们   Python的WEB框架 Bottle Bottle是一个快速.简洁.轻量级的基于WSIG的微型Web框架,此框架只由一个 .py 文件,除了Pytho ...

  8. NeHe OpenGL教程 第四十八课:轨迹球

    转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...

  9. SQL注入之Sqli-labs系列第四十七关,第四十八关,第四十九关(ORDER BY注入)

    0x1 源码区别点 将id变为字符型:$sql = "SELECT * FROM users ORDER BY '$id'"; 0x2实例测试 (1)and rand相结合的方式 ...

随机推荐

  1. 关于react的props你需要知道的一个简单方法

    //注意一点:函数名必须大写 function Clock(props) { return ( <div> <h1>Hello, world!</h1> <h ...

  2. 记一次 .NET 某物管后台服务 卡死分析

    一:背景 1. 讲故事 这几个月经常被朋友问,为什么不更新这个系列了,哈哈,确实停了好久,主要还是打基础去了,分析 dump 的能力不在于会灵活使用 windbg,而是对底层知识有一个深厚的理解,比如 ...

  3. linux目录结构及定时任务

    1. Linux的根目录(最顶层的目录) windows系统有根目录:c盘的根目录就是c:\ d盘的根目录就是d:\ 每个盘(分区)都有自己的根目录 Linux系统, 也支持多个分区 Linux的分区 ...

  4. 【Java面试】RDB 和 AOF 的实现原理、优缺点

    Hi,大家好,我是Mic. 一个工作了5年的粉丝私信我,最近面试碰到很多Redis相关的问题. 其中一个面试官问他Redis里面的持久化机制,没有回答得很好. 希望我帮他系统回答一下. 关于Redis ...

  5. 跨模态语义关联对齐检索-图像文本匹配(Image-Text Matching)

    论文介绍:Negative-Aware Attention Framework for Image-Text Matching (基于负感知注意力的图文匹配,CVPR2022) 代码主页:https: ...

  6. 腾讯云EKS 上部署 eshopondapr

    腾讯云容器服务(Tencent Kubernetes Engine,TKE)基于原生 kubernetes 提供以容器为核心的.高度可扩展的高性能容器管理服务.腾讯云容器服务完全兼容原生 kubern ...

  7. Homebrew安装(macos)

    参照大佬的博客文章:https://zhuanlan.zhihu.com/p/111014448 OSX 将下面命令复制到终端执行 /bin/zsh -c "$(curl -fsSL htt ...

  8. BUCK 电路PSIM仿真模型搭建之一 (PI模块稳定性分析)

    1.  利用PI 模块仿真BUCK 电路电流环 在调制通道上未加入延迟环节时,无论KP, KI 参数如何调整系统都是稳定的 仿真结果: 在调制通道上引入 一个开关周期的延迟 系统出现明显的震荡情况,说 ...

  9. CD 从抓轨到搭建流媒体服务器 —— 以《月临寐乡》为例

    2022-07-19 v0.0.1 由于某些原因,进了 Static World 的群并入坑了 月临寐乡 ,梦开始了.作为幻想乡的新人,也算是有了自己喜欢的社团.但是更细节的东西,狐狐脑子一下子塞不下 ...

  10. ROS机械臂 Movelt 学习笔记2 | Move Group 接口 C++

    Movelt为使用者提供了一个最通用且简单的接口 MoveGroupInterface 类,这个接口提供了很多控制机器人的常用基本操作,如: 设置机械臂的位姿 进行运动规划 移动机器人本体 将物品添加 ...