У меня странная проблема с моим избыточным действием.
У меня есть две функции A (), B () внутри одного компонента, которые вызывают функцию действия ac (), которая использует thunk для выполнения асинхронного вызова. на сервер.
Я использовал mapDispatchToprops для сопоставления ac () с компонентом.
Когда я вызываю A (), он работает как шарм, действие отправляется и состояние обновляется. Но если я вызываю B (), который вызывает тот же ac () таким же образом, действие не отправляется. Это как если бы я вызывал обычную функцию, поэтому внутренняя структура не выполняется.
Я что-то здесь упускаю?
EDIT: generateAgreement () работает, а signAgreement () - нет,даже если они вызывают одно и то же действие updateAgreements ()
generateAgreement = async evt => {
evt.preventDefault();
const selectedAgreement = this.props.myAgreements[evt.target.id];
this.props.updateAgreements(
Object.assign(
{},
{
myAgreements: this.props.myAgreements,
selectedAgreement
}
),
this.props.user.token,
"generate-agreement",
{
agreementId: selectedAgreement.id
},
actionTypes.GENERATE_AGREEMENT
);
};
signAgreement = async evt => {
evt.preventDefault();
const selectedAgreement = this.props.myAgreements[evt.target.id];
this.props.updateAgreements(
Object.assign(
{},
{
myAgreements: this.props.myAgreements,
selectedAgreement
}
),
this.props.user.token,
"sign-agreement",
{
agreementId: selectedAgreement.id
},
actionTypes.SIGN_AGREEMENT
);
};