2013-01-16 5 views
0

J'ai le balisage html prêt, qui ne va pas changer, je veux juste ajouter/mettre à jour les variables dans ce balisage.Comment rendre uniquement les valeurs en utilisant backbone et underscore?

Comment faire cela en utilisant backbone et underscore?

J'ai essayé ce qui suit,

Backbone:

testView = Backbone.View.extend({ 
    initialize: function(){ 
     this.render(); 
    }, 

    render: function(){ 
     var variables = {reqNumber: 10}; 
     /*This is where I'm having problems, how do I use only variables in my template?? 
     * How do I write this next line 
     */ 
     var template = _.template(this.$el.html(), variables); 

     this.$el.html(template); 
    } 
}); 

var test_view = new testView({ el: $("div.container") }); 

HTML:

<a href="#"> 
    <i class="icon-home icon-white"></i> 
    Requests <span class="badge badge-warning"><%= reqNumber %></span> 
</a> 

Répondre

0

Quelque chose comme cela fonctionne. Le problème était que vous n'aviez pas identifié votre modèle comme ceci. $ El pointe sur le conteneur de la vue, pas sur le modèle (voir le script du modèle).

JS:

$(function() { 
    var testView = Backbone.View.extend({ 
     initialize: function(){ 
      this.render(); 
    }, 
    render: function(){ 
     var variables = {'reqNumber': '10'}; 
     var template = _.template($('#test-templ').html(), variables); 

     this.$el.html(template); 
    } 
    var test_view = new testView({ el: $("div.container") });}); 
}); 

HTML:

<script id="test-templ" type="text/html"> 
    <a href="#"> 
     <i class="icon-home icon-white"></i> 
     Requests <span class="badge badge-warning"><%= reqNumber %></span> 
    </a> 
</script> 
<div class="container"></div> 
+0

Je ne besoin d'un modèle pour "tout"? est-ce que cela fonctionne comme le soulignement et le backbone? –

+0

Vous n'avez pas besoin d'un modèle pour chaque vue que vous instanciez, mais vous devrez généralement définir une propriété 'el' car ce sera le conteneur de votre vue. –

+0

Super, merci, avez-vous de bons liens sur l'épine dorsale? –

Questions connexes