webpack之webpack-dev-server的使用

Posted 异形剑客

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了webpack之webpack-dev-server的使用相关的知识,希望对你有一定的参考价值。

本文的目的是要体验下使用webpack服务器的热更新和构建完成自动弹出浏览器的酷炫效果。

1、webpack及webpack-dev-server的安装

全局安装webpack,使用命令npm install webpack -g
全局安装webpack-dev-server,使用命令npm install webpack-dev-server -g

2、项目文件目录结构

例子的目录结构如下:

hello.js文件的作用是导出一段文本,代码如下:

index.js文件的作用是引用文本,并打印到页面上。代码如下:

最后在页面中引用打包好的bundle.js,页面代码如下:

3、webpack.config.js文件配置

代码写完后,配置下 webpack,配置文件如下:

从配置上看入口文件是index.js,打包后会生成一个bundle.js。在通过webpack-dev-server启动时,服务器会在3000端口监听,并自动打开浏览器。

4、项目运行结果

写好代码和配置后,我们运行webpack-dev-server --hot命令,结果杯具了。保错:Cannot find module \'webpack\'

百度一番,发现是环境变量的配置问题。新建一个系统环境变量NODE_PATH,值为:C:\\Users\\Administrator\\AppData\\Roaming\\npm\\node_modules

可以检查一下环境变量的值是否正确,具体是在电脑的地址栏中输入地址C:\\Users\\Administrator\\AppData\\Roaming\\npm\\node_modules

敲回车后,进入目录:

在这个目录下我们看到了全局安装的webpack和webpack-dev-server,这证明我们的路径配置无误。

运行命令webpack-dev-server --hot

浏览器console中可以看到如下信息,代表热更新启动成功,我们修改代码后不用刷新页面。

5、注意事项

注意的地方:
1、有资料说使用webpack-dev-server直接启动,这种情况下要使用热更新,必须在webpack.config.js文件中引入插件HotModuleReplacementPlugin。
webpack官网上有对这个的说明,截图如下:

2、使用webpack-dev-server服务器启动时,打包生成的文件在内存中,而使用webpack命令打包生成的bundle.js默认是在dist目录下,页面引用的时候路径不同。

以上是关于webpack之webpack-dev-server的使用的主要内容,如果未能解决你的问题,请参考以下文章

webpack4:实时打包之webpack-dev-server

webpack 之 webpack-dev-server

webpack-dev-server 之 config

webpack-dev-server搭建本地服务器

webpack5输入指令npx webpack-dev-server 使用webpack-dev-server报错

运行webpack-dev-server遇到的问题