【问题标题】:No component factory found for ModalBackdropComponent. Did you add it to @NgModule.entryComponents?未找到 ModalBackdropComponent 的组件工厂。你把它添加到@NgModule.entryComponents 了吗?
【发布时间】:2021-07-13 16:44:42
【问题描述】:

我收到此错误,

找不到 ModalBackdropComponent 的组件工厂。你把它添加到@NgModule.entryComponents 了吗?

我尝试将 ModalBackdropComponent 添加为 entryComponents,因为这似乎是一个常见问题。我还在最后添加了 forRoot() 。我在角度 8

import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';

import { SharedModule } from '../../shared/shared.module';
import { JobsRoutingModule, JobsRoutingDeceleration } from './jobs-routing.module';
import { DragDropModule } from '@angular/cdk/drag-drop';
import { ReactiveFormsModule, FormsModule } from '@angular/forms';
import { NgScrollbarModule } from 'ngx-scrollbar';

import { ModalBackdropComponent, ModalModule } from 'ngx-bootstrap/modal';
import { BsDatepickerModule } from 'ngx-bootstrap/datepicker';
import { BsDropdownModule } from 'ngx-bootstrap/dropdown';
import { PaginationModule } from 'ngx-bootstrap/pagination';
import { OrderModule } from 'ngx-order-pipe';
import { Ng2SearchPipeModule } from 'ng2-search-filter';
import { AutocompleteLibModule } from 'angular-ng-autocomplete';
import { NgxPrintModule } from 'ngx-print';
import { AssignedJobWidgetComponent } from './jobs/assigned-job-widget/assigned-job-widget.component';

const modulesImport = [
    DragDropModule,
    NgxPrintModule,
  BsDatepickerModule.forRoot(),
  BsDropdownModule.forRoot(),
  PaginationModule.forRoot(),
  ModalModule.forRoot(),
];


@NgModule({
  declarations: [
    JobsRoutingDeceleration,
    AssignedJobWidgetComponent
  ],
  imports: [
    CommonModule,
    JobsRoutingModule,
    SharedModule,
    ReactiveFormsModule,
    FormsModule,
    NgScrollbarModule,
    OrderModule,
    Ng2SearchPipeModule,
      modulesImport,
      AutocompleteLibModule,
  ],
  entryComponents: [ModalBackdropComponent],
})
export class JobsModule { }

【问题讨论】:

    标签: angular


    【解决方案1】:

    对不起,我认为这个 ModalBackdropComponent 是你自己制作的。

    您可以将其从 declarationsentryComponents 数组中删除。这必须已经在ngx-bootstrap 级别完成。

    为什么需要显式导入这个组件?只需导入 ModalModule 即可解决问题。

    如果还是不行,请尝试检查ngx-bootstrap的版本和任何相关问题。 我发现这个stakcblitz 可能有用。

    【讨论】:

    • 感谢您的帮助! :)
    • 我添加了这个,现在看到这个错误'''错误错误:未捕获(承诺):错误:类型 ModalBackdropComponent 是 2 个模块声明的一部分:ModalModule 和 JobsModule!请考虑将 ModalBackdropComponent 移至导入 ModalModule 和 JobsModule 的更高模块。您还可以创建一个新的 NgModule,它导出并包含 ModalBackdropComponent,然后在 ModalModule 和 JobsModule 中导入该 NgModule。'''
    猜你喜欢
    • 2018-01-06
    • 2019-11-05
    • 2019-12-06
    • 1970-01-01
    • 1970-01-01
    • 2017-09-25
    • 2018-05-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多