Вызов функции после коллбэк
Как правильно вызвать функцию после коллбэк?
pay (amount) {
const data = {
payment: {
amount: amount,
description: 'Оплата',
created_at: new Date(),
options: {
callbacks: {
result_url: 'https://my-domain.com/result',
check_url: 'https://my-domain.com/check'
}
}
},
successCallback: function (item) {
this.create(item) //при вызове этой функции выдает ошибку, прописанную снизу
},
errorCallback: function (item) {
console.log(item)
}
}
// здесь функция, после завершения которой, выполняются коллбэки. Я удалила часть
},
create (item) {
console.log('lll25', item)
}
ОШИБКА: TypeError: this.create is not a function at i.successCallback
а нужно чтоб при успешном выполнении оплаты, выполнялся функция create. Можете подсказать мою ошибку? Благодарю заранее
Ответы (1 шт):
Автор решения: T0xee.n17
→ Ссылка
У вас при вызове колбэка successCallback создаётся новый контекст, так как вы объявляете функцию при помощи function. Используйте стрелочную функцию для того что бы использовать внешний конекст.
successCallback: (item) => {
this.create(item)
},
Также здесь вы можете почитать об использовании стрелочных функций.