Позвольте мне сказать, что у меня есть два модуля в моем приложении (скажем, Parent и Child ), каждый из которых имеет свои компоненты, и я хочучтобы показать дочерний компонент внутри родительского компонента
Я попытался экспортировать дочерний компонент в дочернем модуле, а затем импортировать его в родительский модуль. Это сработало! дочерний компонент показан внутри моего родительского компонента
Но у меня есть одна проблема , которая говорит о том, что мой дочерний компонент является частью 2 модулей ! и вот когда я пытаюсь показать любой дочерний компонент, я застрял с этим, если кто-то может помочь. Было бы очень полезно
после того, как я переместил дочерний модуль в app.module, это мои модули
Дочерний модуль:
import { NgModule } from '@angular/core';
import { RouterModule } from '@angular/router';
import { WinpharmSharedModule } from 'app/shared/shared.module';
import { StockComponent } from './stock.component';
import { StockDetailComponent } from './stock-detail.component';
import { StockUpdateComponent } from './stock-update.component';
import { StockDeletePopupComponent, StockDeleteDialogComponent } from './stock-delete-dialog.component';
import { stockRoute, stockPopupRoute } from './stock.route';
const ENTITY_STATES = [...stockRoute, ...stockPopupRoute];
@NgModule({
imports: [WinpharmSharedModule, RouterModule.forChild(ENTITY_STATES)],
declarations: [StockComponent, StockDetailComponent, StockUpdateComponent, StockDeleteDialogComponent, StockDeletePopupComponent],
entryComponents: [StockComponent, StockUpdateComponent, StockDeleteDialogComponent, StockDeletePopupComponent]
})
export class WinpharmStockModule {}
Родительский модуль:
import { NgModule } from '@angular/core';
import { RouterModule } from '@angular/router';
import { WinpharmSharedModule } from 'app/shared/shared.module';
import { ProduitComponent } from './produit.component';
import { ProduitDetailComponent } from './produit-detail.component';
import { ProduitUpdateComponent } from './produit-update.component';
import { ProduitDeletePopupComponent, ProduitDeleteDialogComponent } from './produit-delete-dialog.component';
import { produitRoute, produitPopupRoute } from './produit.route';
const ENTITY_STATES = [...produitRoute, ...produitPopupRoute];
@NgModule({
imports: [
WinpharmSharedModule,
RouterModule.forChild(ENTITY_STATES)
],
declarations: [
ProduitComponent,
ProduitDetailComponent,
ProduitUpdateComponent,
ProduitDeleteDialogComponent,
ProduitDeletePopupComponent
],
entryComponents: [ProduitComponent, ProduitUpdateComponent, ProduitDeleteDialogComponent, ProduitDeletePopupComponent]
})
export class WinpharmProduitModule {}
затем app.module.ts:
import { HTTP_INTERCEPTORS } from '@angular/common/http';
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
...
import { WinpharmStockModule } from './entities/stock/stock.module';
@NgModule({
imports: [
BrowserModule,
NgbModule,
// Here's the child module
WinpharmStockModule,
WinpharmSharedModule,
WinpharmCoreModule,
WinpharmHomeModule,
// jhipster-needle-angular-add-module JHipster will add new module here
WinpharmEntityModule,
WinpharmAppRoutingModule
],
declarations: [...
})
export class WinpharmAppModule {}
Ошибка: «Uncaught (inОбещание): Ошибка: Тип ChildComponent является частью объявлений 2 модулей: ChildModule и ParentModule ! Пожалуйста, рассмотрите возможность перемещения ChildComponent ввышестоящий модуль, который импортирует ParentModule и ChildModule . Вы также можете создать новый NgModule, который экспортирует и включает в себя ChildComponent , а затем импортировать этот NgModule в ParentModule и ChildModule .