Maison >interface Web >js tutoriel >Pourquoi est-ce que j'obtiens une erreur « Variable de modèle de soulignement non définie » dans Backbone.js ?
Dans Backbone.js, l'utilisation de modèles de soulignement pour générer dynamiquement du HTML est courante, mais des extraits de code antérieurs peuvent rencontrer une « variable non définie " erreurs. Cet article explique pourquoi cela se produit et comment le résoudre.
Dans le passé, les modèles de soulignement pouvaient être analysés et remplis en une seule étape en utilisant la syntaxe suivante :
var html = _.template(template_string, data);
Cependant, les versions Underscore 1.7.0 et supérieures ont introduit le concept d'options de modèle, qui doivent être explicitement fournies comme deuxième argument de _.template(). Ces options permettent un contrôle précis du comportement du modèle.
Pour compiler et exécuter correctement les modèles de soulignement, suivez ces étapes :
Cela peut être représenté comme :
var tmpl = _.template(template_string); var html = tmpl(data);
Considérez l'extrait de code suivant, qui montre comment implémenter des modèles avec Airbnb Les Locations de vacances de ensemble de données :
var V = Backbone.View.extend({ el: 'body', render: function() { var data = [ { id: 1, lat: -27, lon: 153 }, { id: 2, lat: -33, lon: 151 } ]; var tmpl = _.template('<li><%= id %>. <%= lat %>, <%= lon %></li>'); var html = data.map(tmpl).join(''); this.$el.html(html); return this; } }); var v = new V(); v.render();
En suivant la syntaxe de modèle correcte, vous pouvez utiliser efficacement les modèles Underscore dans vos applications Backbone.js.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!