Когда я использую несколько сладостных предупреждений на одной странице, он всегда вызывает первый обратный вызов.Несколько сладких предупреждений выполняют всегда первый обратный вызов подтверждения
Объясняет:
У меня есть кнопка, чтобы отправить запрос друга, который становится «до/отменить» кнопка после нажмите
{{#if addFriend}}
<li>{{> addFriendBtn user=usr}}</li>
{{/if}}
{{#if pending}}
<li>{{> pendingFriendBtn user=usr}}</li>
{{/if}}
Каждого БТН имеет событие щелчка вызывая сладкое предупреждение:
Template.addFriendBtn.events({
'click .add-friend': function (evt,tpl) {
console.log('inside click .add-friend...');
const options = {
title: "Friend request",
showCancelButton: true,
confirmButtonText: "Oui",
closeOnConfirm: true,
closeOnCancel:true,
allowOutsideClick: false,
allowEscapeKey:true
};
swal(options, function() {
console.log("Inside add-friend confirmation swal...");
Meteor.call('sendFriendRequest', tpl.data.user);
});
}
});
Template.pendingFriendBtn.events({
'click .cancel-request': function (evt, tpl) {
console.log('inside click .cancel-request');
const options = {
title: "Confirmation",
showCancelButton: true,
closeOnConfirm: true,
closeOnCancel:true,
allowOutsideClick: false,
allowEscapeKey:true
};
swal(options, function(){
console.log("inside cancel-request confirmation swal...");
Meteor.call('cancelFriendRequest', tpl.data.user);
});
}
});
Meteor.methods({
sendFriendRequest: function (recipient) {
console.log('Inside sendFriendRequest...');
...
},
cancelFriendRequest: function (recipient) {
console.log('Inside cancelFriendRequest ...');
....
}
});
Когда я нажимаю кнопку «Добавить друга» в первый раз, он отлично работает. Я получаю сладкое предупреждение и после подтверждения мой обратный вызов выполняется правильно, и кнопка становится кнопкой «Ожидание/Отмена».
Когда я нажимаю кнопку «Отложенное/Отмена», чтобы отменить мой запрос друга, я получаю правильное сладкое предупреждение, но когда я подтверждаю, он выполняет обратный вызов «sendFriendRequest» для первой кнопки «добавить друга», ,
Я не мог понять, почему так ведет себя ... Любые мысли по этому вопросу? Заранее спасибо.
UPDATE: После добавления журналов
Первый щелчок: добавить друга:
Клиентские журналы:
внутри нажмите .Добавьте-друга ...
Внутри адд подтверждение друга swal ...
журналы сервера:
Внутри sendFriendRequest ...
Второй щелчок: отменить ожидающий запрос:
Клиентские журналы
внутри клик .cancel-запрос
Внутреннее подтверждение друга swal ...
сервера журналы:
Внутри sendFriendRequest ...
Добавить несколько консольных журналов: сначала в вашем событии .add-friend, затем в вашем событии .cancel-request, третьем в вашем обратном вызове sendFriendRequest и последним в вашем обратном вызове cancelFriendRequest. Убедитесь, что правильная кодировка фактически выполняется. –
Я добавил журналы, как вы предложили (вопрос отредактирован), и получите следующий результат: ** Первый щелчок: добавить друга: ** _Client logs: _ внутри клика.надстройку друг ... Внутри дополнения друг подтверждение swal ... _SERVER журналы: _ Внутри sendFriendRequest ... ** Второй щелчок: отменить ожидающий запрос: ** _client logs_ внутри мыши .cancel-запроса Inside Подтверждение друга swal ... _Server logs: _ Внутри sendFriendRequest ... –
Привет, вы когда-нибудь разрешили эту проблему? Если да, то как? У меня такая же проблема. – ickyrr