Angular2 Module: How can i import a service from another module
Adding the module to imports should do
import { ApiClientModule } from './apiClient.module';@NgModule({ imports: [ ApiClientModule, CommonModule, FormsModule ], declarations: [ DailyScheduleComponent, ], exports: [ DailyScheduleComponent ],})export class ClinicDashboardModule {}
otherwise import the file that contains the service class
import { ClinicFacilityService } from './clinic-facility.service';
There is a clear distinction between @NgModule()
imports
and TypeScript imports.
If you need to use the class name (ClinicFacilityService
) then a TypeScript import of that class is required. This is entirely unrelated to @NgModule()
@NgModule({ ... providers: [ ClinicFacilityService ],
If the @NgModule()
import is required, then the class name of the module class (ApiClientModule
) requires a TypeScript import because the module needs to be passed.
@NgModule({ imports: [ ApiClientModule, ],
- TypeScript imports are to to uniquely identify a class.
- NgModule imports are to define that a module depends on another module.
This is kinda old post but for the sake of others, I find this article very comprehensive and fully answers this question. Hint: see Importing services section of that article.