반응: 상태 관리

안녕하세요. darshan ponikar입니다. 오늘은 우리가 내려야 하는 성가신 결정 중 하나인 "상태 관리"에 대해 이야기할 것입니다!

자 보세요, 정말 중요합니다. 초보자라면 아직 이 문제에 직면하지 않았을 수 있지만 Redux, Context API 또는 구성 요소 상태 중 어디에 내 상태를 둘지 곧 결정해야 합니다.

이제 상태를 관리하기 위해 중앙 집중식 상태 메커니즘과 Context API가 있는 Redux 상태 관리 라이브러리에 대해 들었을 것입니다.



그러나 상태를 관리하는 가장 좋은 방법은 무엇입니까? 예를 들어 redux를 사용해야 합니까?

Redux를 배우기 시작한 많은 초보자들이 이제 Redux를 모든 곳에서 사용하고 있습니다.

You need to decide whether you should go for redux or context API?



하지만 상태 관리가 정말 중요한 이유를 이해해 볼까요?



State is one of the core part of React Application. You can consider as a heart of your application.



애플리케이션이 확장되기 시작한다는 것을 알고 있으므로 점점 더 많은 구성 요소와 소품이 이러한 구성 요소를 통과하고 있습니다.

Don't you think this pattern will start to became weird?



예를 들어 소셜 미디어 플랫폼과 같은 애플리케이션을 구축하고 있고 앱 수준의 서버에서 알림을 가져오고 홈 페이지를 통과한다고 가정해 보겠습니다.

앱 구성요소




const App = () => {
      // fetching some notifications APIs 
      useEffect(() => {
          axios...
      }, [])
         return <Home notifications={notifications} />
    }


홈 구성 요소




 const Home = ({ notifications }) => {
     return <Pagebase>
     <Notification notifications={notifications} />
     ....
    ....
    </Pagebase>
}




So here we are passing notifications props through App, Home and Notifications and this will became hard to manage. This situation is known as "Prop Drilling"



이러한 상황을 방지하기 위해 두 가지 옵션이 있습니다.
  • 컨텍스트 API
  • 리덕스 스토어

  • 그러나 어느 것이 가장 좋습니까? Context API 또는 Redux를 사용해야 합니까?

    Redux는 좋은 라이브러리이지만 비용이 많이 들 수도 있습니다.
  • 먼저 redux 스토어를 구성해야 합니다.
  • 작업 파견.
  • 감속기 만들기
  • 모든 소품을 구성 요소로 매핑합니다.

  • redux가 성능 저하라고 말하는 것은 아니지만 응용 프로그램에 redux와 같은 것이 정말로 필요한지 아니면 Context API를 사용할 수 있는지 결정해야 합니다.

    주를 어디에 두어야 할지 결정하려면 다음 질문에 답하십시오!
  • 상태의 범위는 무엇입니까?
  • 상태를 유지해야 합니까? (오프라인 지원)
  • 상태를 개선하고 문제를 해결할 수 있습니까?

  • 리덕스 스토어



    Redux는 훌륭한 옵션입니다.
    불필요한 네트워크 콜백을 피하는 데 도움이 될 수 있습니다.redux-persist를 사용하여 오프라인 지원을 활성화할 수 있습니다.
    애플리케이션 상태가 전역적이므로 모든 곳에서 상태를 사용할 수 있습니다.

    하지만



    상점을 구성해야 하고 작업 작성자를 만들고 구성 요소를 사용하여 상점을 매핑해야 합니다.

    Everything comes at cost!



    Context API로 문제를 해결할 수 있습니까?

    컨텍스트 API



    컨텍스트 API는 가볍고 소품을 전달하는 효과적인 방법이며 컨텍스트를 만들고 useContext 후크와 함께 직접 사용할 수 있는 구성이 필요하지 않습니다.

    따라서 애플리케이션을 확장할 수 있는 방식으로 설계하는 것이 매우 중요하며 성능도 유지해야 합니다.

    이 결정은 시간이 좀 걸릴 것입니다. 그것은 귀하의 응용 프로그램에 크게 의존하며 귀하가 처리해야 합니다.

    그게 다야.

    감사합니다. 댓글로 의견을 공유하세요. 가장 마음에 드는 것이 무엇인지 알려주시고 추가하고 싶은 것이 있으면 언제든지 메시지를 남겨주세요!

    좋은 웹페이지 즐겨찾기