Action Creators 내에서 Redux 상태에 액세스: 장단점
Action Creator 내에서 Redux 스토어 상태에 액세스하는 것은 여전히 논쟁의 주제로 남아 있습니다.
접근 방식 1: Store 가져오기
import store from '../store'; export const SOME_ACTION = 'SOME_ACTION'; export function someAction() { return { type: SOME_ACTION, items: store.getState().otherReducer.items, } }
이 접근 방식은 미들웨어를 피하지만 모듈에서 내보낸 싱글톤인 Store에 의존합니다. 그러나 서버 렌더링에는 요청마다 별도의 저장소가 필요하므로 이 접근 방식은 실용적이지 않습니다.
접근 방식 2: getState 사용
export const SOME_ACTION = 'SOME_ACTION'; export function someAction() { return (dispatch, getState) => { const {items} = getState().otherReducer; dispatch(anotherAction(items)); } }
이 접근 방식에서는 Redux Thunk를 사용해야 합니다. 미들웨어는 더 많은 유연성을 제공하여 클라이언트와 서버 모두에서 원활하게 작동합니다.
Redux 기여자의 의견
이 문제에 대한 의견은 Redux 기여자마다 다릅니다.
결론
궁극적으로 상태 생성자에 액세스하는 결정은 애플리케이션의 특정 요구 사항에 따라 달라집니다. 최소한의 작업 페이로드가 필요한 경우 getState를 사용하지 않는 것이 좋습니다. 그러나 사용 사례에 따라 썽크 내에서 상태에 액세스하면 더 많은 유연성과 서버측 호환성이 제공됩니다.
위 내용은 Action Creator 내에서 Redux 상태에 액세스하는 것이 언제 정당합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!