微前端 架构不同于传统单体应用的开发模式,其分开开发、部署、调试的特征使其需要一套新的调试工具 来满足新的使用场景,诸如:在开发 Module Federation 时怎么验证模块在实际项目中的效果、 Module Federation 的依赖是否和宿主环境进行了复用、当前页面加载了哪些 Module Federation , Module Federation 的依赖关系、Module Federation 间的数据流转是怎么样的。
Chrome Devtool 提供了以下能力:
Module Federation 代理功能,将线上页面中的Module Federation代理到用户本地的Module FederationModule Federation版本,来进行快速的功能验证
必须使用 mf-manifest.json 才可以使用 Chrome devtool 提供的可视化和代理能力
开发环境以及生产环境
http://localhost:3000/mf-manifest.json,页面将直接加载 3000 端口的 Module Federation 内容mf-manifest.json 文件地址形式,例如:key: appA -> value: https://xxx/static/mf-manifest.json, 页面将直接加载指定地址的 Module Federation 内容
添加到 Chrome 按钮
插件提供了 Devtools 面板
Module Federation tab,进入代理页面,便可对依赖的 模块进行代理调试

如下图所示,代理页面上提供了 add new proxy module、producer selector、 version or local port or custom entry 等选项操作。
producer selector 选择出目标页面需要代理的一个模块;version or local port 选择或者输入指定的地址(包括端口号和 mf-manifest.json 结尾的地址),进行代理操作;add new proxy module 区域,增加对应的代理模块。


可以将 devtools 改成独立窗口打开

插件会筛选出符合配置规则的模块进行代理