微前端(5)ice
这篇记录飞冰相关实验。
主应用搭建
安装依赖
1 |
|
App.vue 中初始化
1 |
|
1 |
|
微应用搭建
main.ts
1 |
|
App.vue 可以跳回主应用
1 |
|
html
加载模式
icestark 目前支持三种加载模式,分别是 script、fetch 和 import,由 loadScriptMode
字段指定。
- script—默认加载方式。该模式下,icestark 会通过 HTML
script
标签加载微应用脚本资源,再次加载时充分利用浏览器缓存进行加载。 - fetch—当指定 loadScriptMode 为 fetch,或配置微应用沙箱模式时,会通过 window.fetch 或用户自定义的 fetch 能力加载并缓存脚本资源。再次加载时,会充分利用本地内部缓存进行加载。
- import—加载 ES modules 类型微应用的主要方式,该模式会通过 Dynamic Import 动态加载脚本资源。
Q & A
直接启动 UMS,首页能渲染,浏览器地址栏输入 /pts,显示的是浏览器404,不是自己的404页面。
【错误❌】猜测是否是因为 pts 首页进行了一个跳转?尝试将地址更改为 /pts/traceChip。
直接启动 pts,发现是因为 router 没有成功,恢复到之前的写法,此时 UMS 中输入 /pts 跳转到自己的404页面。(路由请求已经成功,只是页面没找到)
经过检查,发现 activeApps 开始是有的,不知道为什么数据加载了又没了。
【原因】router.ts 中修改 createRouter,不能直接用原来的 history。首页都能渲染并且点击侧栏都能跳转,但是点击操作列跳转显示 Not Found,浏览器返回按钮点击无效。
【原因】终端开启的服务自己在重新加载,加载完成后未出现该问题。
芯片台账-查看 访问成功静态资源访问失效
主应用和子应用本地开发启动端口不一样,导致资源加载以主应用IP+绝对路径
访问,线上环境应该不会出现这个问题。
附录
飞冰
微前端(5)ice
https://guoningyan.com/2023/09/26/微前端(5)ice/