微前端解决方案
主要依赖包
整体逻辑:
所以一般要求子应用是SPA
eval
执行子应用的脚本;识别其中带有entry
属性的脚本或最后一个脚本,取其exports
,按需触发脚本披露的‘生命周期钩子’
子应用必须提供
mount
和unmount
,用来挂载和卸载dom
<style>
;控制样式的相互污染Proxy
代理 window
ProxySandbox
LegacySandbox
window
的直接属性,独立储存应用内挂载在上面的属性(在应用运行前注入应用修改的,应用运行后换回应用修改前的)
SnapshotSandbox
with
,使子应用脚本执行的全局对象指向代理对象