Vuex 작업: 다른 작업 내의 작업 액세스(디스패치 없음, Promise.all을 연결해야 함)
vuex 작업 내에서 몇 가지 다른 작업(모든 약속)의 결과를 기다려야 합니다.중첩 발송을 피하고 싶은데 Promise.all을 사용하여 할 수 있는 방법이 있습니까?예:
Promise.all([ action1, action2 ])
.then(() => {
// do the thing
});
수행한 작업이 약속을 반환하는 경우 - 네, 그렇게 할 수 있습니다.예를들면
let res1 = this.$store.dispatch('action1', data1);
let res2 = this.$store.dispatch('action2', data2);
Promise.all([ res1, res2 ])
.then(() => {
// do the thing
});
const actions =
{
action1 ({ commit, getters, rootState })
{
return this.$axios.get(`/user/patient/${rootState.route.params.id}/call/currentCall`)
.then(res =>
{
let call = Object.getOwnPropertyNames(res.data).length === 0 ? false : res.data;
if (call && call.call_details.patient_dial_status === 'in-progress')
{
commit('setCurrentCall', {
currentCall: call,
callState: 'in-call'
});
}
return Promise.resolve(call);
});
},
};
언급URL : https://stackoverflow.com/questions/51464569/vuex-actions-access-action-within-other-action-no-dispatch-need-to-chain-prom
'source' 카테고리의 다른 글
과학적 표기 없이 SQL Server에서 float를 varchar로 변환 (0) | 2023.07.04 |
---|---|
Oracle PL/SQL - NO_DATA_Found 예외가 저장 프로시저 성능에 좋지 않습니까? (0) | 2023.07.04 |
통화/화폐를 다루는 가장 좋은 방법은 무엇입니까? (0) | 2023.07.04 |
oradiag_폴더란 무엇입니까? (0) | 2023.07.04 |
"git init"과 "git init --bare"의 차이점은 무엇입니까? (0) | 2023.06.29 |