재 선택을 사용하고 반응을 반복합니다. 기본 모달 구현을위한 선택자를 만들려고합니다.다시 선택하십시오. 정의되지 않음의 'get'속성을 읽을 수 없습니다.
내 선택은
Cannot read property 'get' of undefined
편집의 오류가 발생
const selectModal = (state) => state.get('modal');
이다 : 그것은 어떤 차이가 없어야하지만 내가 선택 모달를 호출하는 방법을 보여 요구되고있다.
const mapStateToProps = createStructuredSelector({
isVisible: selectModalIsVisible(),
});
const mapDispatchToProps = {
hideModal,
showModal
};
export default connect(mapStateToProps, mapDispatchToProps)(Modal);
나는이 모달 상태 컨테이너가 아마도 내 감속기를 설정하고 또는 잘못 저장
발견되지 않는 것을 의미 믿습니다. 내 감속기와 결합function modalReducer(state = initialState, action) {
switch (action.type) {
case HIDE_MODAL:
return state.set(
'isVisible', false);
case SHOW_MODAL:
return state.set(
'isVisible', true);
default:
return state;
}
}
는 글로브
export default function createReducer(asyncReducers){
return combineReducers({
route: routeReducer,
auth: authReducer,
modal: modalReducer,
...asyncReducers
});
}
에 감속기를 결합하고 내 가게에 주입
function configureStore(initialState = {}, history) {
const middlewares = [
sagaMiddleware,
routerMiddleware(history),
];
const enhancers = [
applyMiddleware(...middlewares),
]
const store = createStore(
createReducer(),
fromJS(initialState),
compose(...enhancers)
);
store.runSaga = sagaMiddleware.run;
//store.close =() => store.dispatch(END)
store.runSaga(sagas);
store.asyncReducers = {};
return store;
}
var initialState = {}
const store = configureStore(fromJS(initialState), browserHistory);
재 선택에서 오류가 라인 74분의 73 PARAMS에있다 = dependencies.map
var selector = function selector(state, props) {
for (var _len4 = arguments.length, args = Array(_len4 > 2 ? _len4 - 2 : 0), _key4 = 2; _key4 < _len4; _key4++) {
args[_key4 - 2] = arguments[_key4];
}
var params = dependencies.map(function (dependency) {
return dependency.apply(undefined, [state, props].concat(args));
});
return memoizedResultFunc.apply(undefined, _toConsumableArray(params));
};
그래서 내가 뭘 잘못하고있다, 내가 모드에 액세스 할 immutableJS 다르게 뭔가를 할 필요가 또는 응용 프로그램에 대한 잘못된 설정입니까? 보내 주신 의견에 미리 감사드립니다.
selectModal''호출하는 코드를 추가하십시오 : 그것은 단지
(state) => state.get('modal')
는 일반적으로createStructuredSelector
의 내 용도 중 하나모양을 또는 내가 선택 공장을 필요로하는 경우 받아 들일 것입니다. –
@JimBolla 오류는 그 시점보다 오래 전에 호출되므로 아무런 차이가 없어야합니다. 나는 더 많은 것을 보여주는 것이 혼란스러워할지 모르지만 나는 그것을 추가했다. – mibbit
대부분의 셀렉터는'selector = state => doSomething (state)'형태이며, selector =() => (state) => doSomething (state)'입니다. 내가 놓친 게 있니? –