Le rendu de collecte de vue en backbone.js
J'ai du mal à comprendre comment rendre une collection dans une vue à l'aide d'un modèle. Voici mon code:
<div id="mydiv"></div>
<script type="text/template" id="details">
<ul>
<% _.each(?, function(person) { %>
<li><%= person.name %></li>
<% }); %>
</ul>
</script>
<script>
var m = Backbone.Model.extend();
var c = Backbone.Collection.extend({
url: 'retrieve.php',
model: m
});
var v = Backbone.View.extend({
el : $('#mydiv'),
template : _.template($("#details").html()),
initialize : function() {
var coll = new c();
coll.fetch({success: function(){alert(JSON.stringify(coll));} });
this.render();
},
render : function() {
//what do I put here?
return this;
}
});
var view = new v();
Je suis confus sur la façon d'obtenir les données de retour de mon fichier php dans le template. Quel code dois-je besoin de l'avis et ._each? Mon code php est de retour:
[{"id":"1","name":"John","age":"5"},{"id":"2","name":"Jane","age":"2"}]
et je vois cela dans le alert().
OriginalL'auteur user1884367 | 2013-03-21
Vous devez vous connecter pour publier un commentaire.
Vous devriez appeler votre
render
fonction de lasuccess
gestionnaire comme uncollection.fetch
retourne le résultat de manière asynchrone (vous pouvez également lierrender
fonction de collecte de l'reset
événement).Et dans le modèle de référence à la même
persons
objetMise à jour:
J'ai créé le travail violon, mais j'ai dû modifier le code source d'origine que je ne peux pas utiliser votre
retrieve.php
extrémitéJ'ai ajouté violon pour ma réponse
Grand. Merci pour votre aide
C'est une mauvaise approche, car si l'un de vos modèles, vous devez à nouveau de rendre l'ensemble de votre collection pour refléter cette modification de la vue.
Salut. si vous pensez que c'est une mauvaise approche, alors pouvez-vous s'il vous plaît partager quelque chose que vous considérez comme une meilleure approche? P. S. je suis encore nouveau pour backbone.js
OriginalL'auteur user20140268
Ce que vous avez demandé est une question générique de l'utilisation d'une collection de générer une vue. La plupart d'entre eux sont à l'aise avec la génération d'une vue avec un modèle, mais pas avec une collection. J'ai suivi le tutoriel suivant La liaison d'une collection à une vue. Pourrait être utile pour vous aussi.
OriginalL'auteur Venkat Kotra