반응형
조건일 경우 다른 조치 후 Redex 호출 조치
다음과 같은 논리로 환원제를 어떻게 구현해야 하는가?동기화 및 비동기화라는 두 가지 동작이 있다.그것의 유효성을 말하고() 저장()한다.사용자가 단추를 누를 때validate()
그리고 그것은 약간의 변화를 준다.isValid
주 저장소의 변수그렇다면isValid
수행된 작업을 저장하십시오.
하고 싶은 일을 하는 방법은 여러 가지가 있다.그러나 일반적으로, 파생될 수 있는 어떤 것도 Redex에 저장하지 마십시오. isValid
필드에서 유효성 검사를 실행하여 도출할 수 있다.더욱이 나는 변화하는 양식 필드 값과 같은 중간 상태가 Redex에 속한다고 생각하지 않는다.유효한 것으로 간주되어 제출될 때까지 반응 상태로 보관할 겁니다.
스푸너가 코멘트에서 언급했듯이, 당신은 thunk 내의 동기화 액션을 부를 수 있다.아니면 thunk 내의 주(州)에 접근할 수 있다.
옵션 #1
// Action Creator
export default function doSomething(isValid) {
return (dispatch) => {
dispatch(setValid(isValid));
if (isValid) {
return fetch() //... dispatch on success or failure
}
};
}
옵션 #2
// Component
dispatch(setValid(isValid));
dispatch(doSomething());
// Action Creator
export default function doSomething() {
return (dispatch, getState) => {
const isValid = getState().isValid;
if (isValid) {
return fetch() //... dispatch on success or failure
}
};
}
그 기능들을 '클릭 핸들러'에 '랩'할 수 있다.
//call it on button click
handleClick = () => {
if (validate()) {
//call save function
save()
}
}
validate = () => {
//do something
//check validness and then
if (valid) return true
}
참조URL: https://stackoverflow.com/questions/36824465/redux-call-action-after-other-action-if-condition
반응형
'Programing' 카테고리의 다른 글
가중치 있는 랜덤 버전.선택하다 (0) | 2022.03.20 |
---|---|
각도에서 http 통화 신청을 취소해야 하는 거야? (0) | 2022.03.20 |
페이지 라우터용 vue-properner (0) | 2022.03.20 |
Vue 계산된 속성이 데이터 개체 변경 (0) | 2022.03.20 |
반응에서 형제 구성 요소의 상태를 쉽게 설정하는 방법 (0) | 2022.03.20 |