programing

reaction-remedx가 저장소를 컨텍스트에 전달하는 이유

prostudy 2022. 3. 12. 10:38
반응형

reaction-remedx가 저장소를 컨텍스트에 전달하는 이유

react-remessx가 store.dispatch를 사용하여 발송하고 store.getState를 사용하여 상태를 가져올 수 있으므로 기본적으로 모든 기능을 Resact.createContext를 사용하지 않고도 달성할 수 있는 경우, 현장 뒤의 Provider를 사용하여 스토어를 React's 컨텍스트로 전달하는 이유.내가 뭘 빠트렸나요?아니면 그렇게 하는 것의 다른 장점들이 있는가?

감사합니다.

리액션의 컨텍스트 API는 사실상 경량 종속성 주입 시스템이다.다른 DI 시스템과 마찬가지로, 그 가치는 컴파일할 때 특정 인스턴스나 구현에 당신의 논리를 구속하지 않는 것이다.

React-Redex의 경우, Redex 연결 로직에는 런타임에 일부 Redex 스토어 인스턴스와 대화해야 하는 부분이 많지만, 코드를 작성할 때 어떤 Redex 스토어 인스턴스가 될지는 알 수 없다.예를 들면 다음과 같다.

  • 응용 프로그램 구성 요소는 실제 응용 프로그램에서 알려진 싱글톤 스토어 인스턴스를 사용할 수 있지만 모든 장치 테스트에 대해 즉시 고유한 저장소 인스턴스를 생성해야 한다. https://redux.js.org/recipes/writing-tests#connected-components
  • Redex 연결 구성요소를 라이브러리로 게시할 수 있으며, 이러한 구성요소는 사용자가 사용할 Redx 저장소를 확실히 알 수 없음

그래서 문맥을 통해 가게를 물려주는 것은 가게와 상호작용을 하는 구성요소를 쓸 수 있게 해주지만 어느 가게든 상관없다.그것은 런타임에 주입된다.

일반적으로 Redex 저장소를 직접 구성 요소(또는 다른 파일) 가져오지 마십시오. https://redux.js.org/style-guide/style-guide#only-one-redux-store-per-app

참조URL: https://stackoverflow.com/questions/66872430/why-react-redux-passes-store-to-context

반응형