aboutsummaryrefslogtreecommitdiffhomepage
path: root/client/src/hmr.ts
diff options
context:
space:
mode:
Diffstat (limited to 'client/src/hmr.ts')
-rw-r--r--client/src/hmr.ts16
1 files changed, 16 insertions, 0 deletions
diff --git a/client/src/hmr.ts b/client/src/hmr.ts
new file mode 100644
index 000000000..4d707a250
--- /dev/null
+++ b/client/src/hmr.ts
@@ -0,0 +1,16 @@
1import { NgModuleRef, ApplicationRef } from '@angular/core'
2import { createNewHosts } from '@angularclass/hmr'
3
4export const hmrBootstrap = (module: any, bootstrap: () => Promise<NgModuleRef<any>>) => {
5 let ngModule: NgModuleRef<any>
6 module.hot.accept()
7 bootstrap()
8 .then(mod => ngModule = mod)
9 module.hot.dispose(() => {
10 const appRef: ApplicationRef = ngModule.injector.get(ApplicationRef)
11 const elements = appRef.components.map(c => c.location.nativeElement)
12 const makeVisible = createNewHosts(elements)
13 ngModule.destroy()
14 makeVisible()
15 })
16}