bixi
Version:
企业级中后台前端解决方案
29 lines (26 loc) • 890 B
text/typescript
import { HTTP_INTERCEPTORS } from '@angular/common/http';
import { ModuleWithProviders, NgModule } from '@angular/core';
import { MOCK_CONFIG } from './mock-config.token';
import { MockInterceptor } from './mock.interceptor';
import { IMockConfig } from './mock.type';
export class BixiMockModule {
static forRoot(data: IMockConfig): ModuleWithProviders<BixiMockModule> {
return {
ngModule: BixiMockModule,
providers: [
{ provide: HTTP_INTERCEPTORS, useClass: MockInterceptor, multi: true },
{ provide: MOCK_CONFIG, useValue: data }
]
};
}
static forChild(data: IMockConfig): ModuleWithProviders<BixiMockModule> {
return {
ngModule: BixiMockModule,
providers: [
{ provide: HTTP_INTERCEPTORS, useClass: MockInterceptor, multi: true },
{ provide: MOCK_CONFIG, useValue: data }
]
};
}
}