我正在使用 ngx-bootstrap 的 (3.0.1) ModalService 来显示一个包含组件的模式对话框
this.modalRef = this.modalService.show(MyDialogComponent);
我的单元测试中有这个(开玩笑的)
beforeEach(async(() => {
TestBed.configureTestingModule({
declarations: [MyComponent, MyDialogComponent],
schemas: [CUSTOM_ELEMENTS_SCHEMA],
providers: [MyService],
imports: [
ModalModule.forRoot(),
],
})
.compileComponents();
}));
顽固的错误告诉我无法解析 BsModalService 的所有参数:(?,?)。我能找到的答案是提到缺少合适的@Injectable()
装饰器,但这显然超出了我的控制范围,而且它是无关紧要和误导的——装饰器存在于 ngx-bootstrap 的源代码中。
我尝试从包中显式提供所有组件和服务(而不是 ModuleWithProviders,但这也无济于事。
缺乏想法。
更新 1
尝试评论进出
import 'core-js/es7/reflect';
在 plyfills.ts 中。似乎没关系。除非有一个与我失踪相关的 Jest 配置设置?