Ich habe ein Ereignis zu löschen interne Nachrichten in meiner App: eine Schaltfläche vor, mit einem Klick-Ereignis, die eine Methode aufrufen. Alles funktioniert gut.Meteor.call funktioniert nicht in sweetalert Bestätigungsfeld
Aber vor dem Aufruf der Methode möchte ich eine Bestätigungsbox "Sind Sie sicher, dass Sie diese Nachricht löschen möchten?"
Mit der Standard-Funktion bestätigen js, funktioniert gut. Aber der Standard js confirmbox ... Kein Styling erlaubt.
So war meine Idee sweetalert zu verwenden: alles gut gehen, die berts Meldungen als gut, aber keine Meldung gelöscht wird ..
unter meinem Fall, Box-Version & sweetalert Version bestätigen, und die Methode.
Danke!
bestätigen Box-Version
Template.Users.events({
'click .toggle-admin': function() {
Meteor.call('toggleAdmin', this._id);
},
'click button.delete-message':function() {
if(confirm('Are you sure?')) {
Meteor.call('deleteMessage', this._id, function(error) {
if(error) {
Bert.alert({
title: 'Error',
message: error.reason,
type: 'danger'
});
} else {
Bert.alert({
title: 'Success',
message: 'Message deleted.',
type: 'success'
});
}
});
}
}
});
sweetalert Version
Template.Users.events({
'click .toggle-admin': function() {
Meteor.call('toggleAdmin', this._id);
},
'click button.delete-message':function() {
swal({
title: "Are you sure?",
text: "You will not be able to recover this message!",
type: "warning",
showCancelButton: true,
confirmButtonColor: "#DD6B55",
confirmButtonText: "Yes, delete it!"
}).then(function(){
Meteor.call('deleteMessage', this._id, function(error) {
if(error) {
Bert.alert({
title: 'Error',
message: error.reason,
type: 'danger'
});
} else {
Bert.alert({
title: 'Success',
message: 'Message deleted.',
type: 'success'
});
}
});
})
}
});
Methode
Meteor.methods({
insertMessage: function(message) {
ContactMessages.insert(message);
},
deleteMessage: function(messageId) {
ContactMessages.remove({_id: messageId});
}
});
Ich denke, 'this' ist nicht das, was Sie erwartet, dass es innerhalb der Callback zu sein. – MasterAM
@MasterAM Konnten Sie spezifischer sein? – Ontokrat