0
我正在使用Rex針對我的Firebase上的React Native應用程序發出更新請求。Firebase更新方法產生Promise Rejection
這裏是我的終極版片斷
export function buyTicket(eventID) {
const { currentUser } = firebase.auth();
return (dispatch) => {
firebase.database().ref(`/Users/${currentUser.uid}/joinedEvent`).update({ [eventID]: true })
.then(() => dispatch({ type: BUY_TICKET_SUCCESS }))
.catch(() => dispatch({ type: BUY_TICKET_FAIL }));
};
};
當buyTicket函數被調用,只是當時()方法應當預期,但隨後都()和catch()得到調用。
根據Firebase文檔,update()會產生一個承諾,但它是可選的。
錯誤這是我減速
export default (state = INITIAL_STATE, action) => {
switch (action.type) {
case PULL_EVENT_DATA:
return action.payload;
case PULL_TRENDING_DATA:
return action.payload;
case BUY_TICKET_SUCCESS:
return {
message: 'Yay, see you there!'
}
case BUY_TICKET_FAIL:
return {
message: 'shit'
}
default:
return state;
}
}
你是確保鎖釦回報? 'Object.assign'是第一條警戒線,也許它與你的減速器有關? – Jan
我已經修改了我的減速器,但它對我來說看起來很好,儘管...... @Jan –