Programing

어떤 환원 미들웨어를 선택해야 할까?

c10106 2022. 4. 6. 22:03
반응형

어떤 환원 미들웨어를 선택해야 할까?

가이드에 따라, 나는 환원 적용을 위해 있는 미들웨어의 종류에 이르렀다.

Redex Thunk, Redex Promise, Redex Promise 미들웨어, Redex 관찰 가능, Redex Saga, Redex Pack

그것은 단지 우리가 어떤 미들웨어를 선택하는가에 관한 선호의 문제일 뿐이다.그러나 나는 컨벤션 선택권을 요구하는 것이 아니다.

성능, 브라우저 지원, 활용 사례 등 서로 다른 점이 있는지 알고 싶다.아니면 내가 놓치고 있는 그 어떤 것이든지.나는 이것들을 위해 열심히 조사했지만 어떤 기사도 찾을 수 없었다.

그래서 나는 내 어플리케이션에 미들웨어를 고르는 것을 고려할 수 있다.미들웨어가 다른 특별한 사용 사례를 알고 있다면 미들웨어를 선택하는 것도 좋을 것 같아.

아니면, 모든 미들웨어는 단지 관습일 뿐이고 나는 어떤 종류의 환원제 어플리케이션(작거나 큰 것)을 위해 그것들 중 하나를 선택할 수 있다.

이러한 도서관들하나를 선택할 수 있으려면 우리는 우리가 작은 애플리케이션을 만들고 있는지 아니면 큰 애플리케이션을 만들고 있는지 고려해야 한다.가용성, 코드 표준 및 자바스크립트 지식도 고려할 수 있다.모두 비슷하다.

환원제의

Reducx Thunk 미들웨어는 당신이 액션 대신 함수를 반환하는 액션 크리에이터를 쓸 수 있게 해준다.Thunk는 조치의 파견을 지연시키는 데 사용될 수 있으며, 특정 조건이 충족되는 경우에만 파견을 할 수 있다.그것은 매개 변수로 디스패치와 getState의 방법을 통합한다.

환원제의

reducx-message는 응용 프로그램 부작용(즉, 데이터를 가져오는 것과 같은 비동기화 및 브라우저 캐시에 액세스하는 것과 같은 불순한 절차)을 관리하기 쉽고 효율적인 방법으로 실행하는 것을 목적으로 하는 라이브러리다.발전기라는 ES6 기능을 사용해 테스트가 간단해 흐름을 동기 코드로 읽기 쉽다.

환원할 수 있는

환원식 미들웨어는 환원식 스컹크에서 영감을 얻은 환원식 미들웨어다.개발자는 관찰 가능, 약속 또는 수 많은 액션을 반환하는 기능을 파견할 수 있다.관찰할 수 있는 사람이 어떤 행동을 하거나, 그 약속이 어떤 행동을 해결하거나, 또는 그 수 많은 사람이 어떤 행동을 할 때, 그 행동은 평상시처럼 파견된다.

기타는 기둡의 출처에서 직접 가져온 것이다.

환원제의

미들웨어는 계속하기 전에 작업이 끝날 때까지 기다릴 수 있도록 전화를 건 사람에게 약속을 돌려준다.이것은 특히 서버측 렌더링에 유용하다.

환원식 미들웨어

Redex 약속 미들웨어는 Redex에서 비동기 액션 크리에이터의 강력한 처리를 가능하게 한다: 약속을 받아들이고 보류 중, 이행 중, 거부된 액션을 발송한다.미들웨어는 Redex Thunk와 결합하여 체인 액션 크리에이터를 만들 수도 있다.

환원제의

리듀렉스 팩은 약속의 라이프사이클에 따른 비동기 동작을 선언적으로 할 수 있도록 하는 약속 기반 미들웨어를 도입한 도서관이다.

환원제의 비동기 작용은 종종 환원 스컹크 또는 다른 미들웨어를 사용하여 수행된다.이 접근방식의 문제는 순차적으로 디스패치를 너무 쉽게 사용하고, 동일한 인터랙션/이벤트의 결과로 다수의 "액션"을 디스패치하는 것인데, 여기서 그들은 단지 하나의 액션 디스패치였어야 했을 것이다.

이것은 우리가 여러 개의 디스패치를 하나의 거래의 전부로서 취급하고 있기 때문에 문제가 될 수 있지만, 실제로는 각각의 디스패치가 전체 컴포넌트 트리의 별도 리렌더(rerender)를 발생시키게 되는데, 이 리렌더(rederder)는 엄청난 성능 페널티를 지불할 뿐만 아니라, 환원 상점이 일관되지 않은 상태에 놓일 위험도 있다.

Reducx Pack은 우리가 이런 실수를 하는 것을 막는데 도움을 준다. 왜냐하면 그것은 우리에게 디스패치 기능의 힘을 주는 것이 아니라 우리가 전에 하던 모든 것을 할 수 있게 해주기 때문이다.

나의 개인적인 경험으로 (나는 당신이 열거한 미들웨어의 대부분을 사용했다.)

Redex Saga가 가는 길이다.학습 곡선이 높지만 일단 머리를 감싸고 나면 엄청나게 강력해진다.

리듀렉스 사가

  1. 우려의 분리를 허용
  2. 부작용 감소
  3. 취소할 수 있는 작업(놀라운 작업)
  4. 병렬 처리

일단 Redex saga를 이해하면, 응용 프로그램을 확장하는 것이 훨씬 쉬워진다.

https://engineering.universe.com/what-is-redux-saga-c1252fc2f4d1

참조URL: https://stackoverflow.com/questions/50035984/which-redux-middleware-should-i-choose

반응형