47 lines
1.2 KiB
TypeScript
Raw Normal View History

declare var angular: angular.IAngularStatic;
2016-11-10 14:27:46 +00:00
import { NgModule } from '@angular/core';
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
import { BrowserModule } from '@angular/platform-browser';
import { UpgradeModule, downgradeComponent } from '@angular/upgrade/static';
import { HeroDetailComponent } from './hero-detail.component';
import { HeroesService } from './heroes.service';
// #docregion register
2016-11-10 14:27:46 +00:00
@NgModule({
imports: [
BrowserModule,
UpgradeModule
],
providers: [{
provide: 'heroes',
useFactory: (i: any) => i.get('heroes'),
deps: ['$injector']
}],
2016-11-12 15:27:51 +00:00
// #enddocregion register
2016-11-10 14:27:46 +00:00
declarations: [
HeroDetailComponent
],
entryComponents: [
HeroDetailComponent
]
2016-11-12 15:27:51 +00:00
// #docregion register
2016-11-10 14:27:46 +00:00
})
export class AppModule {
ngDoBootstrap() {}
}
2016-11-12 15:27:51 +00:00
// #enddocregion register
2016-11-10 14:27:46 +00:00
angular.module('heroApp', [])
.service('heroes', HeroesService)
.directive(
'heroDetail',
downgradeComponent({component: HeroDetailComponent}) as angular.IDirectiveFactory
);
2016-11-10 14:27:46 +00:00
platformBrowserDynamic().bootstrapModule(AppModule).then(platformRef => {
2016-11-14 19:02:54 +00:00
const upgrade = platformRef.injector.get(UpgradeModule) as UpgradeModule;
2016-11-10 14:27:46 +00:00
upgrade.bootstrap(document.body, ['heroApp'], {strictDi: true});
});