J'utilisais Backbone LayoutAutManager pour gérer mes vues dans l'application. Je voulais essayer Marionette. Je suis tombé sur un problème où je ne pouvais pas ajouter de vue dans une région.
var MyView = Backbone.View.extend({ tagName: "div", beforeRender: function() { this.insertView(new ItemView()); } });
3 Réponses :
Une vue par région. Définissez simplement une autre région pour mettre votre autre point de vue. P>
Quelqu'un pourrait vouloir changer de contenu de la région avec glisser comme menu iOS et détruire l'ancien après avoir glissé. Mangling avec deux régions serait encombrant.
Vous pouvez simplement créer une région d'emballage une marionette.Layout Vous pouvez trouver la documentation à marionette.layoutView P>
Fondamentalement, la mise en page constitue une extension des vues de l'article, qui peuvent avoir d'autres régions de manière récursive. Ce qui signifie que vous pouvez rendre plusieurs vues dans une mise en page et la mise en page elle-même peut être rendue dans une autre région. P>
Merci Anil, j'ai essayé Marionette.Layout qui sert à mon but, mais à nouveau, Marionette ne me permett pas d'ajouter une vue sauf s'il y a un conteneur prédéfini pour cela. Quoi qu'il en soit, je vais devoir faire plus de travail sur Marionette pour la comprendre complètement.
Je ne fais pas si cela fonctionne pour vous, mais vous pouvez vérifier la page ci-dessous github.com/marionettejs/backbone.marionette/blob/master/docs / ... , comme vous pouvez le constater, vous ne devez pas définir vos régions statiquement, vous les définissez programmatique chaque fois que vous en avez besoin. Mais comme vous l'avez dit, vous devez toujours avoir un conteneur prédéfini dans votre balisage
à ajouter une vue Vous avez besoin d'une vue de mise en page
Layout View contient un gestionnaire de région p>
mais vous devez d'abord ajouter un élément à contrôler par le gestionnaire de la région comme p> Créer un nouvel ID pour la nouvelle vue Ajoutez-le à la mise en page p> Le gestionnaire de la région ajoutez-le sous la région p> Vous montrez votre point de vue P> p>