【发布时间】:2020-04-28 03:03:28
【问题描述】:
我正在为我当前的项目使用单个水疗中心,并希望有一个加载器,直到我的微应用程序被加载并且这些微应用程序之间会有一个切换,在这种情况下,我也想显示一个加载器。有没有办法达到同样的效果?
【问题讨论】:
标签: javascript micro-frontend single-spa-angular single-spa
我正在为我当前的项目使用单个水疗中心,并希望有一个加载器,直到我的微应用程序被加载并且这些微应用程序之间会有一个切换,在这种情况下,我也想显示一个加载器。有没有办法达到同样的效果?
【问题讨论】:
标签: javascript micro-frontend single-spa-angular single-spa
见https://single-spa.js.org/docs/layout-definition#loading-uis
import { registerApplication } from 'single-spa';
registerApplication({
name: "app1",
app: loadApp1,
activeWhen: '/'
})
function loadApp1() {
return Promise.resolve().then(() => {
placeLoader()
return System.import('app1')
}).then(app => {
removeLoader()
return app;
})
}
function placeLoader() {
document.body.appendChild(
Object.assign(document.createElement('img'), {
id: 'single-spa-loader',
src: "loading.gif"
})
})
}
function removeLoader() {
document.getElementById('single-spa-loader').remove()
}
【讨论】: