bixi
Version:
企业级中后台前端解决方案
64 lines (54 loc) • 1.92 kB
text/typescript
import { LayoutModule } from '@angular/cdk/layout';
import { HttpClientJsonpModule, HttpClientModule } from '@angular/common/http';
import { APP_INITIALIZER, NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { TranslateModule } from '@ngx-translate/core';
// angular i18n
import { registerLocaleData } from '@angular/common';
import localeZh from '@angular/common/locales/zh';
registerLocaleData(localeZh);
import { RoutesModule } from './routes/routes.module';
import { SharedModule } from './shared/shared.module';
import { I18NService } from './core/i18n/service';
import { BIXI_I18N_TOKEN } from './core/i18n/service.type';
import { StartupService } from './core/startup.service';
import { AppComponent } from './app.component';
import { HeaderComponent } from './layout/header/header.component';
import { LayoutComponent } from './layout/layout.component';
import { BixiI18nModule } from '@bixi/core/i18n';
import { BixiMockModule } from '@bixi/mock';
import * as MOCKDATA from '../../_mock';
export function StartupServiceFactory(startupService: StartupService) {
return () => startupService.load();
}
@NgModule({
imports: [
BrowserModule,
BrowserAnimationsModule,
HttpClientModule,
LayoutModule,
SharedModule,
RoutesModule,
BixiI18nModule,
HttpClientJsonpModule,
BixiMockModule.forRoot({
data: MOCKDATA
}),
// i18n
TranslateModule.forRoot()
],
providers: [
{ provide: BIXI_I18N_TOKEN, useClass: I18NService, multi: false },
StartupService,
{
provide: APP_INITIALIZER,
useFactory: StartupServiceFactory,
deps: [StartupService],
multi: true
}
],
declarations: [AppComponent, LayoutComponent, HeaderComponent],
bootstrap: [AppComponent]
})
export class AppModule { }