Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular ngrx createSelector TypeError中出错:无法读取属性';等参线';未定义的_Angular_Ngrx - Fatal编程技术网

Angular ngrx createSelector TypeError中出错:无法读取属性';等参线';未定义的

Angular ngrx createSelector TypeError中出错:无法读取属性';等参线';未定义的,angular,ngrx,Angular,Ngrx,我正在使用createSelector函数 我有一个我无法解决的问题,我已经到了不知道该怎么办的地步 export const getRecoveryIsOpen = createSelector( getRecoveryPasswordState, fromRecoveryPassword.getRecoveryPasswordIsOpen ) 所以我召唤她 this.store.select(reducers.getRecoveryState).subscribe( isB

我正在使用createSelector函数

我有一个我无法解决的问题,我已经到了不知道该怎么办的地步

export const getRecoveryIsOpen = createSelector(
    getRecoveryPasswordState,
    fromRecoveryPassword.getRecoveryPasswordIsOpen
)
所以我召唤她

this.store.select(reducers.getRecoveryState).subscribe( isBlur => {
    console.log(isBlur)
})
在帕吉纳的卡加广场上,我看到了一个错误。在卡加多斯矫正中心,你可以使用这些工具

ERROR TypeError: Cannot read property 'isOpen' of undefined
    at getRecoveryPasswordIsOpen (recovery-password.reducer.ts:65)
    at store.js:938
    at memoized (store.js:853)
    at defaultStateFn (store.js:893)
    at store.js:947
    at memoized (store.js:853)
    at MapSubscriber.project (store.js:772)
    at MapSubscriber._next (map.js:29)
    at MapSubscriber.next (Subscriber.js:49)
    at MapSubscriber._next (map.js:35)
这是我的恢复密码

import * as RecoveryPasswordActions from '../actions/recovery-password.actions';
import { RecoveryPasswordActionTypes } from '../actions/recovery-password.actions';


export interface State {
    identificacion: number;
    error: String;
    currentStep: number;
    isOpen: boolean;
}

const initialState: State = {
    identificacion: null,
    error: "",
    currentStep: 1,
    isOpen: false
}

export function RecoveryPasswordReducer(state: State = initialState, action: RecoveryPasswordActions.actions) {

    switch (action.type) {
        case RecoveryPasswordActionTypes.OpenRecoveryPassword:
            return {
                ...state,
                isOpen: true
            }

        case RecoveryPasswordActionTypes.CloseRecoveryPassword:
            return {
                ...state,
                isOpen: false
            }

        case RecoveryPasswordActionTypes.SendIdUser:
            return {
                ...state,
                identificacion: action.payload.identificacion
            }

        case RecoveryPasswordActionTypes.SendIdUserError:
            return {
                ...state,
                error: action.payload.error
            }

        case RecoveryPasswordActionTypes.SendIdUserSuccess:
            return {
                ...state,
                currentStep: 2
            }

        case RecoveryPasswordActionTypes.SendRecoveryMethod:
            return {
                ...state,
                recoveryMethod: action.payload.recoveryMethod
            }

        default:
            return state;
    }

}

export const getRecoveryPasswordState = (state: State) => state;
export const getRecoveryPasswordIsOpen = (state: State) => state.isOpen;
export const getRecoveryPasswordCurrentStep = (state: State) => state.currentStep;
export const getRecoveryPasswordError = (state: State) => state.error;
我已经复习了很多,我真的没有发现任何错误,我想知道我是否做错了什么

export const selectIsOpen=createFeatureSelector('isOpen');//如果您没有模块AppModule的任何名称,或者这不是子StroreModule
export const selectIsOpen = createFeatureSelector<boolean>('isOpen'); // if you dont have any name for module AppModule or this is not Child StroreModule
export const selectPatent = createFeatureSelector<State>('Parent name'); // parent name you can find in parant Module in imports StoreModule.forFeature('Parent name', reducers)
export const export const getRecoveryIsOpen = createSelector(selectPatent, (state) => state && state.isOpen);
export const selectPatent=createFeatureSelector('父名称');//父名称可以在imports StoreModule.forFeature中的parant模块中找到('parent name',reducers) export const export const getRecoveryIsOpen=createSelector(selectPatent,(state)=>state&&state.isOpen);
您的问题有一部分是西班牙语的。请注意,这是一个英语网站