开发服务器
Rspack CLI 内置了 @rspack/dev-server
用于开发调试,它的能力与 webpack-dev-server
相似,内置了 HMR、代理服务器等功能。
TIP
@rspack/dev-server
中使用了webpack-dev-server@5
,与webpack-dev-server@4
有一些差异。
- webpack-dev-server v5 最低支持的 Node.js 版本为 18.12.0。
- 配置选项发生了若干变更,请参阅 webpack-dev-server v5 的迁移指南。
HMR
Rspack 在 dev 模式下默认开启了 HMR,你也可以在 rspack.config.js
中配置 devServer.hot
选项来关闭 HMR。
module.exports = {
devServer: {
hot: false,
},
};
⚠️ 警告
不要在
output.cssFilename
包含[hash]
或者[contenthash]
,否则 CSS 的 HMR 可能会不生效。
Proxy
Rspack 内置了一个简单的代理服务器,你可以在 rspack.config.js
中配置 devServer.proxy
选项来开启代理服务器。devServer 内部使用了 http-proxy-middleware 来实现代理功能。例如我们可以通过如下方式将 /api
代理到 http://localhost:3000
。
module.exports = {
devServer: {
proxy: [
{
context: ['/api'],
target: 'http://localhost:3000',
changeOrigin: true,
},
],
},
};
更多关于 devServer 的配置项请参考 devServer。