From 4150625e122fc47f3a4d2adfbe0e2f861dd35b8e Mon Sep 17 00:00:00 2001
From: xufenglei <xufenglei>
Date: Mon, 16 Jul 2018 16:48:29 +0800
Subject: [PATCH] 更新
---
src/app/app.module.ts | 76 +++++++++++++++++++++++++++++++++-----
1 files changed, 66 insertions(+), 10 deletions(-)
diff --git a/src/app/app.module.ts b/src/app/app.module.ts
index 926975a..b3d93f0 100644
--- a/src/app/app.module.ts
+++ b/src/app/app.module.ts
@@ -1,18 +1,74 @@
+import { NgModule, LOCALE_ID, APP_INITIALIZER, Injector } from '@angular/core';
+import { HttpClient, HTTP_INTERCEPTORS, HttpClientModule } from '@angular/common/http';
import { BrowserModule } from '@angular/platform-browser';
-import { NgModule } from '@angular/core';
+import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
-
+import { DelonModule } from './delon.module';
+import { CoreModule } from './core/core.module';
+import { SharedModule } from './shared/shared.module';
import { AppComponent } from './app.component';
+import { RoutesModule } from './routes/routes.module';
+import { LayoutModule } from './layout/layout.module';
+import { StartupService } from '@core/startup/startup.service';
+import { DefaultInterceptor } from '@core/net/default.interceptor';
+import { SimpleInterceptor } from '@delon/auth';
+// angular i18n
+import { registerLocaleData } from '@angular/common';
+import localeZhHans from '@angular/common/locales/zh-Hans';
+registerLocaleData(localeZhHans);
+// i18n
+import { TranslateModule, TranslateLoader } from '@ngx-translate/core';
+import { TranslateHttpLoader } from '@ngx-translate/http-loader';
+import { ALAIN_I18N_TOKEN } from '@delon/theme';
+import { I18NService } from '@core/i18n/i18n.service';
+import { LoginService } from '@business/services/http/login.service';
+// AoT requires an exported function for factories
+export function HttpLoaderFactory(http: HttpClient) {
+ return new TranslateHttpLoader(http, `assets/i18n/`, '.json');
+}
+
+export function StartupServiceFactory(startupService: StartupService): Function {
+ return () => startupService.load();
+}
@NgModule({
- declarations: [
- AppComponent
- ],
- imports: [
- BrowserModule
- ],
- providers: [],
- bootstrap: [AppComponent]
+ declarations: [
+ AppComponent
+ ],
+ imports: [
+ BrowserModule,
+ BrowserAnimationsModule,
+ HttpClientModule,
+ DelonModule,
+ CoreModule,
+ SharedModule,
+ LayoutModule,
+ RoutesModule,
+ // i18n
+ TranslateModule.forRoot({
+ loader: {
+ provide: TranslateLoader,
+ useFactory: HttpLoaderFactory,
+ deps: [HttpClient]
+ }
+ })
+ ],
+ providers: [
+ // loginservice ������������token���������������
+ LoginService,
+ { provide: LOCALE_ID, useValue: 'zh-Hans' },
+ { provide: HTTP_INTERCEPTORS, useClass: SimpleInterceptor, multi: true},
+ { provide: HTTP_INTERCEPTORS, useClass: DefaultInterceptor, multi: true},
+ { provide: ALAIN_I18N_TOKEN, useClass: I18NService, multi: false },
+ StartupService,
+ {
+ provide: APP_INITIALIZER,
+ useFactory: StartupServiceFactory,
+ deps: [StartupService],
+ multi: true
+ }
+ ],
+ bootstrap: [AppComponent]
})
export class AppModule { }
--
Gitblit v1.8.0