webpack-dev-server
webpack-dev-server
是一个小型的node.js
Express
服务器,它使用webpack-dev-middleware中
间件来为通过webpack
打包生成的资源文件提供Web
服务。它还有一个通过Socket.IO
连接着webpack-dev-server
服务器的小型运行时程序。webpack-dev-server
发送关于编译状态的消息到客户端,客户端根据消息作出响应。
简单来说,webpack-dev-server
就是一个小型的静态文件服务器。使用它,可以为webpack
打包生成的资源文件提供Web
服务。
应用
一、安装 webpack-dev-server
yarn add webpack-dev-server -D
二、package.json
命令行配置
{
"scripts": {
"dev": "webpack serve",
},
}
三、webpack.config.js
配置
const Path = require("path");
module.exports = {
devServer: {
port: 8090,
open: true,
static: {
directory: Path.resolve(process.cwd(), "./"),
},
},
};
原理
- 创建
webpack-dev-server.js
, 编写逻辑代码
在webpack
搭建的项目根目录下创建webpack-dev-server.js
,编写如下代码
const express = require("express");
const webpack = require("webpack");
const config = require("./webpack.config");
// webpackDevMiddleware 的作用:
// 1. 负责打包
// 2. 返回打包文件
const webpackDevMiddleware = require("webpack-dev-middleware");
const app = express();
const compiler = webpack(config);
app.use(webpackDevMiddleware(compiler));
app.listen(3000,()=>{
console.log('webpack-dev-server 服务启动成功!');
});
- 执行命令,运行
webpack-dev-server.js
node webpack-dev-server.js