matrix-dimension/web/app/app.module.ts
2017-05-26 21:51:48 -06:00

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;
}
}