我正在添加一个测试,该测试需要返回选择器的其他模拟值。因此,我找到了一种使用OverRideselecor的好方法,如下所述,https://ngrx.io/guide/store/testing。但是,当添加 oigstore.overrideselector 时,遇到此错误"属性OverRideselector在类型存储中不存在"。有人在此之前修复过吗?
在Angular 7中,无知店确实没有该功能。迁移到Angular 8将解决您的问题。
这很可能只是打字问题。如果您使用provideMockStore
,则实际上会创建一个MockStore
的实例,该实例在DI上以Store
实例提供,因此不会破坏您的应用功能。
因此,在您的测试中,您应该这样使用:
let store: MockStore<State>;
...
store = TestBed.get<Store<State>>(Store);
...
store.overrideSelector(...);