Vue.js $ remove nicht entfernendes Element nach dem Löschen aus der Datenbank

8

Ich benutze Laravel und versuche Vue.js zu lernen. Ich habe eine Löschanforderung, die ordnungsgemäß funktioniert und das Objekt aus der Datenbank löscht. Das Problem ist, dass es nach dem erfolgreichen Löschen nicht aus dem DOM entfernt wird. Ich benutze die $remove -Methode und übergebe sie das vollständige Objekt, also weiß ich, dass mir etwas fehlt.

Als Randnotiz habe ich ein main.js als Einstiegspunkt mit einem PersonTable.vue als Komponente. Der PersonTable.vue enthält die Vorlage und das Skript für diese Vorlage.

Hier ist meine Laravel-Ansicht:

%Vor%

Und hier ist mein 'PersonTable.vue:

%Vor%

Und mein Einstiegspunkt main.js :

%Vor%     
dericcain 21.03.2016, 12:13
quelle

3 Antworten

7

Ich denke, Sie müssen this an die Antwortfunktion binden:

%Vor%

Wenn Sie this.persons verwenden, beziehen Sie sich immer noch auf die Vue-Komponente

edit: könnte versuchen -

%Vor%

Vielleicht, weil persons anfänglich eine Zeichenkette ist, bindet Vue die reaktiven Fähigkeiten nicht richtig?

    
Jeff 21.03.2016, 16:12
quelle
2

Ich denke, dass Sie das this.$set in Ihrer erstellten Methode verwenden müssen, wenn nicht, befürchte ich, dass Vue die Reaktivität verlieren würde.

In Ihrer created -Methode könnten Sie Folgendes versuchen:

%Vor%     
Hammerbot 23.03.2016 15:42
quelle
-2

Endlich herausgefunden. Ich musste die JSON-Daten an meine data -Eigenschaft der Komponente übergeben. Hier ist der Code.

In der Blade-Datei:

%Vor%

In meiner PersonTable.vue-Datei:

%Vor%

Danke an alle für ihre Beiträge. Ich habe Vue fast verlassen, weil es lange gedauert hat, diesen Fehler zu beheben.

    
dericcain 23.03.2016 17:34
quelle