Реагируйте, Redux вызывает действие после изменения параметра API URL - PullRequest
0 голосов
/ 14 февраля 2019

Я столкнулся с проблемой, так или иначе не могу ее решить.Учитывая этот вызов API с параметрами URL.Компонент должен получить новые данные, как только параметр изменился.Таким образом, если дата меняется, редукция должна вызвать эту функцию снова с новой датой и показать новые данные.

Мой код находится в action.js :

 export const getSingleDoctorAppointments = (clinicId, doctorId, date, 
  appointmentTypeId) => dispatch => {
 if (date !== null && date !== undefined) {
    const url = `${apiAddress}DoctorAppointment?clinicId=${clinicId}&doctorId=${doctorId}&date=${date.getDate() +
        '/' +
        (date.getMonth() + 1) +
        '/' +
        date.getFullYear()}&appointmentTypeId=${appointmentTypeId}&insuranceType=&overview=true`;

    axios
        .get(url)
        .then(res =>
            dispatch({
                type: GET_SINGLE_DOCTOR_APPOINTMENTS,
                payload: res.data
            })
        )
        .then(
            dispatch({
                type: PROFILE_LOADING,
                payload: 'Loading Profile'
            })
        )
        .catch(err =>
            dispatch({
                type: GET_SINGLE_DOCTOR_APPOINTMENTS,
                payload: null
            })
        );
}
};

После вызова этой функции я хотел бы получить новые данные с новыми параметрами:

export const getSelectedDate = date => dispatch => {
dispatch({
    type: GET_SELECTED_DATE,
    payload: date
});
};

Я пробовал componentWillRecieveProps внутри самого компонента.Не работалНадеюсь это понятно.Я предполагаю, что это из-за асинхронных и синхронных вызовов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...