Store <state> ngrx/store@8.2类型上不存在属性overrideSelector

时间:2019-08-02 11:03:14

标签: ngrx-store angular8

我正在添加一个测试,该测试需要为选择器返回不同的模拟值。因此,我发现了一种使用https://ngrx.io/guide/store/testing所述的overrideSelecor的好方法。但是,当添加 mockstore.overrideSelector 时,出现此错误“类型Store上不存在property overlaySelector”。有人修复过吗?

2 个答案:

答案 0 :(得分:0)

在Angular 7中,mockStore确实没有该功能。迁移到Angular 8将解决您的问题。

答案 1 :(得分:0)

这很可能只是打字问题。如果您使用provideMockStore实际上会在DI上创建MockStore实例(作为Store实例提供),这样就不会破坏您的应用功能。

因此在测试中,您应该像这样使用它:

let store: MockStore<State>;
...
store = TestBed.get<Store<State>>(Store);
...
store.overrideSelector(...);