我计划使用带有角度的单SPA框架来构建一个网站的微前端架构。该网站已经以遗留的单一方式存在,我们计划将其扼杀在微前端架构上,让独立的团队工作和独立部署。
我的计划是用实际的单体作为单一SPA的根,并一个一个地扼杀微额,与实际的单体共存。我做了一些测试,共存是可能的,但是单SPA总是在我的页面末尾呈现应用程序。
问题是,是否有可能将使用单SPA的应用程序呈现到HTML上的特定位置,例如,在特定的div元素中。这是一个非常简单的测试,我已经做了,这是我如何注册的角度应用单SPA。通过这样做,它总是在body元素的末尾呈现应用程序。
<script>
System.import('single-spa').then(function (singleSpa) {
singleSpa.registerApplication(
'dashboard',
function () {
return System.import('dashboard');
},
function (location) {
return location.pathname.startsWith('/dashboard');
}
);
singleSpa.start();
})
</script>
发布于 2021-04-23 13:49:06
这件事的答案不是那么直截了当,所以我会分道扬镳的。
我的计划是用实际的单体作为单一SPA的根,并一个一个地扼杀微额,与实际的单体共存。
单spa团队建议不要试图将根配置放入应用程序中,以更好地分离关注点。另见“我应该有一个父/根应用程序和子应用程序吗?”和“建筑概览”。相反,你应该有一个独立的根配置,你的第一个单水疗应用程序应该是单一的。
问题是,是否可以将应用程序用单SPA呈现到我的HTML上的特定位置
通过将选项传递给singleSpaAngular,这在单一spa应用程序级别上是可能的。
或者,如果是在根配置中使用单spa布局,您也可以通过配置实现相同的功能。
在特定的div元素中
这就是我认为有一些需要进一步深入研究的地方。虽然您可以将应用程序安装在DOM中的任意位置,但您不应该期望尝试在单个spa应用程序中安装单个spa应用程序。相反,如果组件之间使用相同的框架,则可以通过跨微进口共享组件,也可以通过单水疗包进行跨框架互操作。
https://stackoverflow.com/questions/67024865
复制相似问题