Что я использую
- Угловой
Что я пытаюсь сделать
- У меня есть компонент загрузки, который я хочу повторно использовать в нескольких модулях
Что я сделал
Я создал новый модуль под названием load-overlay.
Внутри этого модуля я экспортирую компонент наложения
Я добавляю этот модуль в app.module
При добавлении компонента в несколько модулей я получаю следующую ошибку:
Тип LoadingOverlayComponent является частью объявлений двух модулей: LoadingOverlayModule и ProjectsModule! Пожалуйста, подумайте о перемещении LoadingOverlayComponent в модуль более высокого уровня, который импортирует LoadingOverlayModule и ProjectsModule. Вы также можете создать новый NgModule, который экспортирует и включает LoadingOverlayComponent, а затем импортировать этот NgModule в LoadingOverlayModule и ProjectsModule.
- Я попытался удалить его из app.module и без особого успеха импортировать в другие необходимые мне модули. Должно быть, я упускаю некоторые очевидные вещи.
Модуль наложения
// Modules
import { NgModule } from '@angular/core';
// Components
import { LoadingOverlayComponent } from './loading-overlay.component';
@NgModule({
declarations: [
LoadingOverlayComponent,
],
imports: [
],
exports: [
LoadingOverlayComponent
],
providers: [ ],
})
export class LoadingOverlayModule { }
Модуль приложения
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { AppComponent } from './app.component';
// Routing
import { AppRouting } from './routing/app-routing';
// Modules
import { ProjectsModule } from './projects/projects.module';
import { UserModule } from './user/user.module';
import { LoadingOverlayModule } from './loading-overlay/loading-overlay.module';
// Services / Providers
import { AuthService } from './user/auth.service'
@NgModule({
declarations: [
AppComponent,
],
imports: [
BrowserModule,
AppRouting,
LoadingOverlayModule
],
providers: [
AuthService,
],
bootstrap: [AppComponent]
})
export class AppModule { }
Модуль проекта
// Modules
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { RouterModule } from '@angular/router';
import { LoadingOverlayModule } from '../loading-overlay/loading-overlay.module';
import { LoadingOverlayComponent } from '../loading-overlay/loading-overlay.component';
@NgModule({
declarations: [
LoadingOverlayComponent
],
imports: [
CommonModule,
RouterModule,
LoadingOverlayModule
],
providers: [ ],
})
export class ProjectsModule { }
Любая помощь, указывающая на то, что я по глупости пропустила, была бы принята с благодарностью.
LoadingOverlayComponent
изProjectsModule
? - person Venomy   schedule 15.11.2017ProjectsModule
иAppModule
? Используете ли вы его в каком-либо другом модуле, кроме этих 2? - person eko   schedule 15.11.2017LoadingOverlayModule
в каждый модуль, в котором вы используете какую-либо из его директив. Может, вы его куда-то пропустили? - person eko   schedule 15.11.2017