Redux : devTools에 표시되지만 useSelector 값이 정의되지 않았습니다.

케빈

나는 redux 환경을 설정하려고하는데 왜 이런 행동이 발생하는지에 대해 난처합니다.

내 감속기에 내 루트 상태가 있습니다.

export type RootState = {
  counter: number;
};
const initialState: RootState = { counter: 0 };

const staticLesson = (state = initialState, action: any) => {
  switch (action.type) {
    case "INCREMENT":
      return state.counter + 1;
    default:
      return state;
  }
};

export default staticLesson;

그런 다음 여기에 결합합니다.

import staticLesson from "./staticLesson/index";
import { combineReducers } from "redux";

const rootReducer = combineReducers({
  staticLesson,
});

export default rootReducer;

공급자와 함께 내 앱을 래핑합니다.

import { createStore } from "redux";
import rootReducer from "./redux/reducers";
import { Provider } from "react-redux";
import { composeWithDevTools } from "redux-devtools-extension";

const store = createStore(rootReducer, composeWithDevTools());

ReactDOM.render(
  <Provider store={store}>
    <App />
  </Provider>,
  document.getElementById("root")
);

그러나 내 구성 요소에 로그인하려고하면 값이 정의되지 않습니다.

const Component = () => {
  const staticLesson = useSelector((state: RootState) => state);   
  const dispatch = useDispatch();

  console.log("counter", staticLesson.counter); <-- logs undefined

  return (
    ...
  )
}

내가 이해하지 못하는 것은 그냥 로그 staticLesson 하면 내 콘솔에 예상대로 나타나는 이유 입니다. 하지만 0카운터 가져 오는 대신 개체의 값에 액세스하려고 하면 undefined. staticLesson내 devTools에 표시되고 있습니다. 거기에 있습니다 ... 난 당황 스럽습니다. 무엇을 엉망으로 만들고 있습니까?

Jayce444

나는 당신이 staticLesson당신의 useSelector전화로 주에서 재산을 반환해야한다고 확신합니다 . 에서 useSelector당신은 반환하고 전체 상태를. 따라서 다음과 같아야합니다.

const staticLesson = useSelector((state: RootState) => state.staticLesson);

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

Redux useSelector는 중첩 값에 대해 정의되지 않음을 반환합니다.

분류에서Dev

React Redux-부울 값이 정의되지 않았습니다.

분류에서Dev

useSelector react-redux 후크를 사용하여 다시 선택-상태가 정의되지 않았습니다.

분류에서Dev

전역 상태 값이 redux에 표시되지 않습니다.

분류에서Dev

Chrome devtools는 정의되지 않았지만 값이 즉시 존재합니다.

분류에서Dev

경고에 표시되지만 JavaScript 전역 배열이 정의되지 않았습니다.

분류에서Dev

감시 창 추가에 값이 표시되지만 값이 변수에 할당되지 않았습니다.

분류에서Dev

반환 값이 html에 표시되지 않았습니다.

분류에서Dev

react-redux에서 useSelector로 지정된 상수로 상태가 업데이트되지 않음

분류에서Dev

함수 표현식 매개 변수에 값이 지정되지 않았지만 값이 있습니다.

분류에서Dev

매개 변수에 값이 지정되지 않았습니다.

분류에서Dev

쉘 스크립트의 변수에 값이 지정되지 않았습니다.

분류에서Dev

페이지에 링크되었지만 #name이 URL에 표시되지 않았습니다.

분류에서Dev

Redux-React : 인증-렌더링이 정의되지 않았습니다.

분류에서Dev

React-native redux-this.props는 AsyncStorage에서 정의되지 않았습니다.

분류에서Dev

Dispatch가 reactjs를 사용하여 redux에서 정의되지 않았습니다.

분류에서Dev

Tomcat : xmx / xms 값이 설정되지 않았습니다. 힙 값은 어디에 정의되어 있습니까?

분류에서Dev

NameError : 'split'이름이 Spark에 정의되지 않았습니다.

분류에서Dev

NameError : ''이름이 .py / .kv에 정의되지 않았습니다.

분류에서Dev

각도 사용자 정의 스타일 지시문 값이 처음에 정의되지 않았습니다.

분류에서Dev

Opera mini에서 자리 표시 자 속성이 감지되었지만 사용되지 않았습니다.

분류에서Dev

C ++ #define 값이 소스 파일에 정의되지 않았습니다.

분류에서Dev

배열에 저장된 값이 정의되지 않았습니다.

분류에서Dev

입력 값이 양식에서 정의되지 않았습니다.

분류에서Dev

[]이 Map <String, Dynamic>에 정의되지 않았습니다.

분류에서Dev

이름 'self'는 Python에서 정의되지 않았습니다.

분류에서Dev

_doPostBack이 JavaScript에서 정의되지 않았습니다.

분류에서Dev

newbie python datetime이 codecademy에 정의되지 않았습니다.

분류에서Dev

ReferenceError : "something"이 QML에 정의되지 않았습니다.

Related 관련 기사

  1. 1

    Redux useSelector는 중첩 값에 대해 정의되지 않음을 반환합니다.

  2. 2

    React Redux-부울 값이 정의되지 않았습니다.

  3. 3

    useSelector react-redux 후크를 사용하여 다시 선택-상태가 정의되지 않았습니다.

  4. 4

    전역 상태 값이 redux에 표시되지 않습니다.

  5. 5

    Chrome devtools는 정의되지 않았지만 값이 즉시 존재합니다.

  6. 6

    경고에 표시되지만 JavaScript 전역 배열이 정의되지 않았습니다.

  7. 7

    감시 창 추가에 값이 표시되지만 값이 변수에 할당되지 않았습니다.

  8. 8

    반환 값이 html에 표시되지 않았습니다.

  9. 9

    react-redux에서 useSelector로 지정된 상수로 상태가 업데이트되지 않음

  10. 10

    함수 표현식 매개 변수에 값이 지정되지 않았지만 값이 있습니다.

  11. 11

    매개 변수에 값이 지정되지 않았습니다.

  12. 12

    쉘 스크립트의 변수에 값이 지정되지 않았습니다.

  13. 13

    페이지에 링크되었지만 #name이 URL에 표시되지 않았습니다.

  14. 14

    Redux-React : 인증-렌더링이 정의되지 않았습니다.

  15. 15

    React-native redux-this.props는 AsyncStorage에서 정의되지 않았습니다.

  16. 16

    Dispatch가 reactjs를 사용하여 redux에서 정의되지 않았습니다.

  17. 17

    Tomcat : xmx / xms 값이 설정되지 않았습니다. 힙 값은 어디에 정의되어 있습니까?

  18. 18

    NameError : 'split'이름이 Spark에 정의되지 않았습니다.

  19. 19

    NameError : ''이름이 .py / .kv에 정의되지 않았습니다.

  20. 20

    각도 사용자 정의 스타일 지시문 값이 처음에 정의되지 않았습니다.

  21. 21

    Opera mini에서 자리 표시 자 속성이 감지되었지만 사용되지 않았습니다.

  22. 22

    C ++ #define 값이 소스 파일에 정의되지 않았습니다.

  23. 23

    배열에 저장된 값이 정의되지 않았습니다.

  24. 24

    입력 값이 양식에서 정의되지 않았습니다.

  25. 25

    []이 Map <String, Dynamic>에 정의되지 않았습니다.

  26. 26

    이름 'self'는 Python에서 정의되지 않았습니다.

  27. 27

    _doPostBack이 JavaScript에서 정의되지 않았습니다.

  28. 28

    newbie python datetime이 codecademy에 정의되지 않았습니다.

  29. 29

    ReferenceError : "something"이 QML에 정의되지 않았습니다.

뜨겁다태그

보관