我目前正在尝试删除我的应用程序中已弃用的选择器。这个github 问题告诉我们将带有 props 的选择器声明为函数。
旧方式(已弃用):
export const getCurrentScope = createSelector(getContextState, (state: ContextState, arg: string) => {
return state.object + arg;
}
新的方法:
export const getCurrentScope = (arg: string) => createSelector(getContextState, (state: ContextState) => {
return state.object + arg;
}
overrideSelector
使用不推荐使用的方法,我可以通过用函数覆盖选择器来模拟选择器。
现在这getCurrentScope
不再是选择器,我无法使用该overrideSelector
功能。
所以我试图模拟如下函数:
import * as contextSelector from '@core/store/selectors/context.selectors';
spyOn(contextSelector, 'getCurrentScope').and.returnValue( ??? );
当我使用 Angular 严格模式时,我必须返回一个 MemoizedSelector 但我找不到任何方法来执行它。
有人可以帮我吗?