webpack 开发服务器的两种不同模式之间切换

分类:技术最近更新:2026-04-15浏览:1182

最近在处理微前端架构,坑很多。因为需要把入口文件导出 umd 模式。在处理架构的过程中,导出模式永远是个空对象 {}。但是通过编译后再引用文件时,发现出现了真实的 Module 对象。

javascript
output: { path: resolve("../dist"), filename: isDev ? "js/[name].js" : "js/[name].[contenthash:8].js", chunkFilename: "js/[contenthash:8].js", publicPath: !isDev ? `/portal_v6/${AppConfig.appName}/` : `http://localhost:${AppConfig.port}/`, library: { name: "main", type: "umd", }, },

但是开发环境中,打印全局 main 是 {}

起初在导出模式这边调整了很多时间,最后和老项目做对比,才发现问题在 devserver 这一块,然后再查找文档,发现了 inline

文档介绍:

在开发服务器的两种不同模式之间切换。默认情况下,应用程序将启用 inline 模式。这意味着将在 bundle 中插入脚本以进行实时重新加载,并且构建消息将出现在浏览器控制台中。

所以把 inline 调整为 false 就可以了。

但是一旦开启了热启动就会失去效果。