Backbone.js verschachtelte Sammlung, Ereignisfeuer hinzufügen, gibt jedoch das Elternmodell zurück [geschlossen

StackOverflow https://stackoverflow.com/questions/8823883

  •  27-10-2019
  •  | 
  •  

Frage

Ich habe versucht, eine Sammlung innerhalb eines Modells zu nisten. Ich habe ein Rezept und ein Rezept enthält Zutatenlisten (Sammlung) mit Zutaten (Modell).

Ich habe zuerst das relationale Backbone-Model ausprobiert, mich dann aber für die hier bereitgestellte Methode entschieden Backbone.js strukturieren verschachtelte Ansichten und Modelle

Wenn ich der Sammlung eine Zutat hinzufüge, wird das Add -Ereignis ausgelöst.

initialize: function(){
        recipe = this.model;

        console.log(recipe);
         _.bindAll(this,"add","remove");

    recipe.ingredientlist.each(this.add);
    recipe.ingredientlist.bind('add', this.add);
    recipe.ingredientlist.bind('remove', this.remove);
        this.render();
    },
        add: function(ingredient){
        console.log(ingredient);
    }

Aber in meiner Konsole, wo ich versuche, den hinzugefügten Zutat auszugeben, bekomme ich das Rezeptmodell zurück.

Mein Modell sieht so aus

MyApp.Models.Recipe = Backbone.Model.extend({

    initialize: function(){
        this.ingredientlist = new MyApp.Collections.IngredientList();
        this.ingredientlist.parent = this;
});

Wie bekomme ich die Bindung, um den Zutaten zurückzugeben, der gerade zur Sammlung hinzugefügt wurde, und nicht das gesamte Rezeptmodell?

War es hilfreich?

Lösung

Ich habe versucht, Ihren Code neu zu erstellen: http://jsfiddle.net/uvydv/ Und soweit ich das beurteilen kann, funktioniert es wie beabsichtigt. Vielleicht ein Problem mit der Erstellung der Modelle?

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top