Backbone.js de collecte imbriquée, événement se déclenche add, mais retourne le modèle parental [fermé]
-
27-10-2019 - |
Question
Je l'ai essayé nicher une collection dans un modèle. J'ai une recette et une recette a ingredientslist (collection) qui a l'ingrédient (modèle).
J'ai d'abord essayé épine dorsale-modèle relationnel, mais opté pour la méthode fournie ici de Backbone.js vues et modèles imbriqués
Quand j'ajoute un ingrédient à la collecte, l'événement d'ajout est déclenché.
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); }
mais dans ma console, où je suis en train de sortie l'ingrédient qui a été ajouté, je reçois le modèle de recette est revenu.
Mon look modèle comme celui-ci
MyApp.Models.Recipe = Backbone.Model.extend({ initialize: function(){ this.ingredientlist = new MyApp.Collections.IngredientList(); this.ingredientlist.parent = this; });
Comment puis-je obtenir la liaison pour retourner l'ingrédient qui vient d'être ajouté à la collection, plutôt que l'ensemble du modèle de recette?
La solution
J'ai essayé de recréer votre code: http://jsfiddle.net/UVYDv/ et, dans la mesure que je peux dire, il fonctionne comme prévu. Peut-être un problème avec la création des modèles?