首页 > 解决方案 > 我的组件在 Angular 中被标记为已加载两次

问题描述

我有一个 Angular 应用程序,我正在为菜单使用 PrimeNg 组件。我已将该组件包含在我的共享模块文件中,但是当我使用 ng build --prod 时,我收到一条错误消息,指出该组件是 2 个模块声明的一部分。

但是,它抱怨的模块是相同的模块,共享模块。

共享模块:

import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { FormsModule }    from '@angular/forms';
import { HttpClientModule } from "@angular/common/http";



import {CardModule} from 'primeng/card';
import {InputTextModule} from 'primeng/inputtext';
import {ButtonModule} from 'primeng/button';
import {CheckboxModule} from 'primeng/checkbox';
import { MenubarModule } from "primeng/menubar";
import {AccordionModule} from 'primeng/accordion';
import {TableModule, Table} from 'primeng/table';
import { DialogModule } from "primeng/dialog";
import {TabViewModule} from 'primeng/tabview';
import {DropdownModule} from 'primeng/dropdown';
import { MenuComponent } from '../Logged-In/menu.component';

@NgModule({
  declarations : [MenuComponent],
  imports: [
    CommonModule,
    CardModule,
    InputTextModule,
    ButtonModule,
    CheckboxModule,
    FormsModule,
    HttpClientModule,
    MenubarModule,
    AccordionModule,
    TableModule,
    DialogModule,
    TabViewModule,
    DropdownModule
  ],
  exports :[
    CardModule,
    InputTextModule,
    ButtonModule,
    CheckboxModule,
    FormsModule,
    HttpClientModule,
    AccordionModule,
    Table,
    DialogModule,
    TabViewModule,
    DropdownModule,
    MenuComponent
  ]
})
export class SharedModuleModule { }

错误信息:

ERROR in Type MenuComponent in C:/Users/xxx/Documents/Visual Studio 2019/Projects/RenasaOnlineClaims/Concourse.ROC.Angular/src/app/Logged-In/menu.component.ts is part of the declarations of 2 modules: SharedModuleModule in C:/Users/xxx/Documents/Visual Studio 2019/Projects/RenasaOnlineClaims/Concourse.ROC.Angular/src/app/modules/shared-module.module.ts and SharedModuleModule in C:/Users/xxx/Documents/Visual Studio 2019/Projects/RenasaOnlineClaims/Concourse.ROC.Angular/src/app/Modules/shared-module.module.ts! Please consider moving MenuComponent in C:/Users/xxx/Documents/Visual Studio 2019/Projects/RenasaOnlineClaims/Concourse.ROC.Angular/src/app/Logged-In/menu.component.ts to a higher module that imports SharedModuleModule in C:/Users/xxx/Documents/Visual Studio 2019/Projects/RenasaOnlineClaims/Concourse.ROC.Angular/src/app/modules/shared-module.module.ts and SharedModuleModule in C:/Users/xxx/Documents/Visual Studio 2019/Projects/RenasaOnlineClaims/Concourse.ROC.Angular/src/app/Modules/shared-module.module.ts. You can also create a new NgModule that exports and includes MenuComponent in C:/Users/xxx/Documents/Visual Studio 2019/Projects/RenasaOnlineClaims/Concourse.ROC.Angular/src/app/Logged-In/menu.component.ts then import that NgModule in SharedModuleModule in C:/Users/xxx/Documents/Visual Studio 2019/Projects/RenasaOnlineClaims/Concourse.ROC.Angular/src/app/modules/shared-module.module.ts and SharedModuleModule in C:/Users/xxx/Documents/Visual Studio 2019/Projects/RenasaOnlineClaims/Concourse.ROC.Angular/src/app/Modules/shared-module.module.ts.
Cannot determine the module for class MenuComponent in C:/Users/xxx/Documents/Visual Studio 2019/Projects/RenasaOnlineClaims/Concourse.ROC.Angular/src/app/logged-in/menu.component.ts! Add MenuComponent to the NgModule to fix it.

我试过删除它,但它告诉我找不到该组件。

提前致谢

标签: angulartypescriptmoduleprimeng

解决方案


推荐阅读