>  Q&A  >  본문

상태 변경 시 탐색 모음 구성 요소가 다시 렌더링되지 않습니다.

장바구니를 만들려고 합니다. 장바구니에서 증가 및 감소 버튼을 누를 때 컨텍스트를 생성하고 상태를 값으로 전달했는데, 내 항목 수가 변경되지만 탐색 표시줄 구성 요소에서 동일한 컨텍스트를 사용하면 장바구니의 총 항목 수가 변경되지 않습니다. . 아래에 코드 조각을 첨부합니다

여기서 컨텍스트를 생성합니다

으아아아

아래는 내 useContext 제공자입니다.

으아아아 으아아아

상태 값은 useReducer에서 가져오고 모든 것이 업데이트되고 있습니다.

이것은 장바구니에 있는 총 항목 수를 가져오기 위해 탐색 모음에서 useContext Hook을 사용하는 방법입니다

으아아아

그러나 상태가 변경될 때마다 탐색 모음은 업데이트된 장바구니에 있는 총 항목 수를 다시 렌더링하지 않습니다. 도와주세요.

이것은 내 useReducer 함수와 업데이트되는 모든 것입니다. console.log()를 실행하여 기능을 확인했습니다. state.totalItems를 포함하여 반환되는 모든 항목은 괜찮습니다.

으으으으

P粉037880905P粉037880905378일 전429

모든 응답(1)나는 대답할 것이다

  • P粉348915572

    P粉3489155722023-09-08 09:44:53

    사용시useReducer 时,它会返回当前状态,对吧?就你而言,该状态是一个对象。因此,您可以直接从该状态对象获取 totalItems . 예:

    으아악

    이런 식으로 totalItems는 상태 개체에서 직접 가져오며 필요할 때마다 사용할 수 있습니다.

    회신하다
    0
  • 취소회신하다