webpack-dev-server的安装使用教程

 更新时间:2023年02月07日 08:58:49   作者:穷少年  
这篇文章主要介绍了webpack-dev-server的安装使用教程,大家有个前提条件要清楚webpack-dev-server依赖webpack,我们需要先安装webpack,本文结合实例代码详细讲解,需要的朋友可以参考下

作用

  • 相当于在本地开启了一个服务,我们可以通过http网络请求访问
  • 提高了IO性能,因为webpack-dev-server将我们的文件编译后放到内存里面,以空间换时间
  • 无需我们每次都需要手动编译我们的文件,我们每次保存文件,就会自动的帮助我们编译发布(注意:webpack4以上,也可以通过开启watch属性实现这个功能)

安装

运行环境

  • “webpack”: “^5.33.2”,
  • “webpack-cli”: “^4.6.0”

1.前提:

webpack-dev-server依赖webpack,我们需要先安装webpack

2.如果是webpack4以上我们还需要安装webpack-cli

npm install webpack --save-dev
npm install  webpack-cli --save-dev

2.安装webpack-dev-server

npm install webpack-dev-server ---save-dev

3.编写webpack.config.js

因为webpack-dev-server完全依赖于webpack,所以我们需要编写webpack的配置文件
例如:

// path 模块解决项目路径问题
const path = require('path')
module.exports = {
    //打包模式,一定要配置,不然打包速度慢很多
    mode: 'development', //开发模式
    // mode:'production',//生产模式

    //入口  
    entry: path.join(__dirname, './src/main.js'), // __dirname 是node的通用变量,代表当前项目路径
    output: {
        // 配置打包后文件存放目录
        path: path.join(__dirname, './dist'),
        // 配置打包后文件的名称
        filename: 'bundle.js'
    },
    // 监听文件改动,自动打包
    //  watch: true,
    devServer: {
        contentBase: path.join(__dirname, './'), // 指定发布后的映射的路径,./代表映射当前路劲
        compress: true, // 压缩资源
        port: 9000, // 指定服务器的端口号
        open: 'Chrome', // 指定以哪个浏览器打开,open:true 代表以默认浏览器打开
    },
}

其余相关属性,我们可以看看官方文档,有详细的解释:
点击进入官方配置devServer

4.配置命令(在package.json内)

webpack版本4以上的命令配置如下

5.运行

在终端里面运行

npm run dev-server

在目录下没有编译的bundle.js文件

其实是有的,webpack-dev-server将我们的文件编译后,发布存放在内存内,不在物理磁盘上,例如:我们开启后,访问bundle.js是可以访问到的

安装html-webpack-plugin

我们的资源文件webpack已经帮助我们编译放到内存里面了,但是我们index.html依然在物理磁盘上,我需要将index.html同样放置到内存中,这是我们就需要依赖html-webpack-plugin插件

作用

  • 自动在内存中根据指定页面生成一个内存的页面
  • 自动,把打包好的bundle.js追加到页面中,无需我们手动引用

安装

通过npm安装

npm install html-webpack-plugin -D

通过require方法导入模块,并且在plugins中放置一个模块对象

运行

运行webpack-dev-server

到此这篇关于webpack-dev-server的安装使用的文章就介绍到这了,更多相关webpack-dev-server使用内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • uniapp小程序开发组件封装之自定义轮播图效果

    uniapp小程序开发组件封装之自定义轮播图效果

    这篇文章主要介绍了uniapp小程序开发组件封装之自定义轮播图,本文主要展示小程序端封装轮播图组件,使用的是uniapp进行的开发,主要使用的是uniapp官网提供的swiper组件,需要的朋友可以参考下
    2023-02-02
  • JavaScript防抖案例讲解

    JavaScript防抖案例讲解

    这篇文章主要介绍了JavaScript防抖案例讲解,本篇文章通过简要的案例,讲解了该项技术的了解与使用,以下就是详细内容,需要的朋友可以参考下
    2021-08-08
  • javascript实现的动态文字变换

    javascript实现的动态文字变换

    javascript实现的动态文字变换...
    2007-07-07
  • JS带你深入领略Proxy的世界

    JS带你深入领略Proxy的世界

    Proxy是es2015 标准规范加入的语法,很可能你只是听说过,但并没有用过,毕竟考虑到兼容的问题,不能轻易地使用Proxy特性。但现在随着各个浏览器的更新迭代,Proxy的支持度也越来越高:而且使用Proxy进行代理和劫持,也渐渐成为了趋势。
    2021-05-05
  • javascript如何使用bind指定接收者

    javascript如何使用bind指定接收者

    这篇文章主要介绍了javascript如何使用bind指定接收者,需要的朋友可以参考下
    2014-05-05
  • JavaScript阻止回车提交表单的方法

    JavaScript阻止回车提交表单的方法

    如何防止回车(enter)键提交表单,其实很简单,就一句话。onkeydown="if(event.keyCode==13)return false;"把这句写在from标签里面就好了
    2015-12-12
  • 用函数式编程技术编写优美的 JavaScript_ibm

    用函数式编程技术编写优美的 JavaScript_ibm

    函数式编程语言在学术领域已经存在相当长一段时间了,但是从历史上看,它们没有丰富的工具和库可供使用。随着 .NET 平台上的 Haskell 的出现,函数式编程变得更加流行。一些传统的编程语言,例如 C++ 和 JavaScript,引入了由函数式编程提供的一些构造和特性。在许多情况下,JavaScript 的重复代码导致了一些拙劣的编码。如果使用函数式编程,就可以避免这些问题。此外,可以利用函数式编程风格编写更加优美的回调。
    2008-05-05
  • javascript History对象原理解析

    javascript History对象原理解析

    这篇文章主要介绍了javascript History对象原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-02-02
  • Boostrap栅格系统与自己额外定义的媒体查询的冲突问题

    Boostrap栅格系统与自己额外定义的媒体查询的冲突问题

    这篇文章主要介绍了Boostrap栅格系统与自己额外定义的媒体查询的冲突问题,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2017-02-02
  • 浅析BootStrap中Modal(模态框)使用心得

    浅析BootStrap中Modal(模态框)使用心得

    Bootstrap Modals(模态框)是使用定制的 Jquery 插件创建的。本文给大家分享BootStrap中Modal(模态框)使用心得,一起看看吧
    2016-12-12

最新评论