Diese Frage kam nach der Lösung this problem dank @ Nils und ich hoffe, jemand kann mir helfen!HTTP-Anfrage, um Datensatz zu entfernen und dann Obj aus Array Vue.js
Eigentlich habe ich eine Liste von Datensätzen und ich kann einige von dann auswählen und diese mit einem Klick entfernen.
Der obige Code funktioniert wie es sein sollte, aber ich bin nicht sicher, ob das, was ich tue, richtig ist oder wenn es jederzeit brechen kann!
Also ich mache die HTTP-Anfrage, um den Datensatz innerhalb der Array.filter() zu löschen ... ist das richtig? Ich fühle, dass es nicht stimmt!
deleteSelected() {
this.list = this.list.filter(function(val, i) {
var id = val.id.toString();
if (this.selected.indexOf(id) === -1) {
return true;
} else {
this.$http.delete('/sources/' + id)
.then(function() {
return false;
}, function() {
return true;
});
}
}, this);
this.selected = [];
},
Das Array this.list
ist, wo meine Liste der Objekte und die this.selected
Array enthält die ID des ausgewählten entfernt werden sollen.
Dann, wenn die HTTP-Anfrage OK geht, entferne ich das Obj und wenn nicht, behalte ich es!
Wie denkst du ist ein guter Weg, das zu tun?
--------- --------- EDIT
ein JSBin Hinzufügen klar zu sein, was ich brauche!
Eigentlich habe ich gerade ein Problem mit meinem Skript gefunden ... Es wartet nicht auf die Ajax - Antwort, um das Objekt aus dem Array zu entfernen. Wenn also einige dieser Datensätze nicht gelöscht werden konnten, werden sie aus dem entfernt Array auch
Jemand?
Es ist nicht das, was ich Liren brauche! Ich habe gerade einen JS Bin hinzugefügt, um klar zu sein, was ich brauche !! Schau, wenn du weißt, wie es geht! –
Kann es jetzt nicht testen, aber ich habe versucht, Ihre Ajax-Anforderung zu entfernen, und das macht den Code zu arbeiten.Schauen Sie sich also wahrscheinlich an, was im Backend dieser Anfrage passiert. – Liren
Ja, tut es! Aber da ich neu in diesem Front-End-Framework bin, würde ich gerne wissen, ob das der richtige Weg ist. Ich hatte es vorher in ein FOR LOOPING gesteckt und jemand hat gesagt das es nicht stimmt ... also ändere ich es und jetzt möchte ich jetzt wenn es ok ist jetzt =) –