На моем веб-сайте есть кнопка переключения, которая определяет, будет ли данный пользователь получать сообщения из данного источника. Всякий раз, когда этот переключатель изменяется, должна вызываться асинхронная функция. Однако, если тумблер изменился, а затем он быстро изменился снова, моя программа должна ждать предыдущего асинхронного вызова fini sh. Вот мои две функции, которые вызывают асинхронные функции
_enable() {
let params = determineSubscriptionParams(this.endpoint, this.level);
SNS_CLIENT.subscribe(params, (err, data) => {
if (err) {
throw err;
}
else {
// do stuff here
}
});
}
_disable() {
let params = {
SubscriptionArn: this.subscriptionArn
}
SNS_CLIENT.unsubscribe(params, (err, data) => {
if (err) {
throw err;
}
else {
// do stuff here
}
});
}
Обе эти функции являются членами класса, а функции подписки и отмены подписки являются асинхронными вызовами