So löschen Sie Elemente aus einem Baum

Habe ich versucht, dieses Beispiel zu verwenden, und fügen Sie grundlegende CRUD-an einen Baum.

http://dev.sencha.com/deploy/ext-4.0.0/examples/tree/treegrid.html

Für jetzt, ich will einfach nur, um ein Element zu löschen aus dem Baum. Ich habe Hinzugefügt-Taste und klicken Sie unter:

click : function() {;
    var record = tree.getSelectionModel().getSelection()[0];
    store.destroy(record);
    store.sync();
}

Habe ich überprüft, die die Aufzeichnung und Speicherung existieren. Der laden ist vom Typ TreeStore wie in dem Beispiel. Wenn ich die Anfrage gesendet wird, ist es nur []. Alle, die ich in meinem proxy im moment ist dieses:

var store = Ext.create('Ext.data.TreeStore', {
    storeId : 'treeStore',
    model : 'Task',
    proxy : {
        type : 'ajax',
        //the store will get the content from the .json file
        url : '../resources/data/treegrid.json'
    },
    folderSort : true
});

Klick auf löschen entfernt die aktuell ausgewählte Element. Brauche ich ein geeignetes zerstören URL im proxy und warum ist Sie nicht senden Sie alle details über das, was muss gelöscht werden-in der Anforderung header? Es gab keine anderen Beispielen zu tun CRUD aus einem Baum, den ich finden konnte.

So löschen Sie Elemente aus einem Baum


EDIT:

Beachten Sie, dass der Grund für die Verwirrung mit store.destroy(record) war, dass Ext.Daten.Speichern hat eine Methode remove(record) aber Ext.Daten.TreeStore nicht. Auch eine Kurzform Ansatz zu zerstören ist record.destroy() eher als record.remove(true).

Beachten Sie jedoch, dass erhielt ich Fehler mache record.destroy() oder record.remove(true). Vermutlich sind die Speicher behalten muss der Knoten senden über JSON zu verwenden, so record.remove() statt.

Schreibe einen Kommentar