Open uioz opened 3 years ago
本质是多个完全独立的项目被 mfe-proxy-server 托管后从用户角度访问则是一个整体.
mfe-proxy-server
不同的应用程序间是完全隔离的, 有时我们想要让他们共享一些状态.
例如使用环境变量来切换应用程序的主题色, 或者写入 API 地址, 而不必再次进行编译.
编译时的环境变量最终会被压缩工具移除, 从而实现没有冗余. 而运行时的环境变量则允许你对应用程序进行微调, 从而实现多个应用程序定制化的组合.
目前变量注入只能注入到浏览器的 windows 上去, 这是最简单的手段. 如果是这这样, 只需要使用者利用构建工具在开发环境下自行配置即可.
如果不使用直接挂载到 window 上的方案, 例如作为一个 AMD/UMD 模块在运行时被构建工具读取, 例如结合 webpack.external
想法
本质是多个完全独立的项目被
mfe-proxy-server
托管后从用户角度访问则是一个整体.不同的应用程序间是完全隔离的, 有时我们想要让他们共享一些状态.
例如使用环境变量来切换应用程序的主题色, 或者写入 API 地址, 而不必再次进行编译.
和编译环境变量的区别
编译时的环境变量最终会被压缩工具移除, 从而实现没有冗余. 而运行时的环境变量则允许你对应用程序进行微调, 从而实现多个应用程序定制化的组合.
中间件该如何处理
目前变量注入只能注入到浏览器的 windows 上去, 这是最简单的手段. 如果是这这样, 只需要使用者利用构建工具在开发环境下自行配置即可.
如果不使用直接挂载到 window 上的方案, 例如作为一个 AMD/UMD 模块在运行时被构建工具读取, 例如结合 webpack.external