mirror of
https://github.com/turt2live/matrix-dimension.git
synced 2024-09-15 21:42:00 +00:00
50 lines
1.3 KiB
TypeScript
50 lines
1.3 KiB
TypeScript
|
import { NgModule, ApplicationRef } from "@angular/core";
|
||
|
import { BrowserModule } from "@angular/platform-browser";
|
||
|
import { HttpModule } from "@angular/http";
|
||
|
import { FormsModule } from "@angular/forms";
|
||
|
import { AppComponent } from "./app.component";
|
||
|
import { HomeComponent } from "./home/home.component";
|
||
|
import { routing } from "./app.routing";
|
||
|
import { removeNgStyles, createNewHosts } from "@angularclass/hmr";
|
||
|
import { NgbModule } from "@ng-bootstrap/ng-bootstrap";
|
||
|
|
||
|
@NgModule({
|
||
|
imports: [
|
||
|
BrowserModule,
|
||
|
HttpModule,
|
||
|
FormsModule,
|
||
|
routing,
|
||
|
NgbModule.forRoot()
|
||
|
],
|
||
|
declarations: [
|
||
|
AppComponent,
|
||
|
HomeComponent
|
||
|
],
|
||
|
providers: [
|
||
|
],
|
||
|
bootstrap: [AppComponent],
|
||
|
entryComponents: []
|
||
|
})
|
||
|
export class AppModule {
|
||
|
constructor(public appRef: ApplicationRef) {
|
||
|
}
|
||
|
|
||
|
hmrOnInit(store) {
|
||
|
console.log('HMR store', store);
|
||
|
}
|
||
|
|
||
|
hmrOnDestroy(store) {
|
||
|
let cmpLocation = this.appRef.components.map(cmp => cmp.location.nativeElement);
|
||
|
// recreate elements
|
||
|
store.disposeOldHosts = createNewHosts(cmpLocation);
|
||
|
// remove styles
|
||
|
removeNgStyles();
|
||
|
}
|
||
|
|
||
|
hmrAfterDestroy(store) {
|
||
|
// display new elements
|
||
|
store.disposeOldHosts();
|
||
|
delete store.disposeOldHosts;
|
||
|
}
|
||
|
}
|