Heim > Web-Frontend > js-Tutorial > Warum erhalte ich die Meldung „Fehler beim Rendern der Unterstrichvorlage: Variable nicht definiert'?

Warum erhalte ich die Meldung „Fehler beim Rendern der Unterstrichvorlage: Variable nicht definiert'?

Patricia Arquette
Freigeben: 2024-11-23 10:05:17
Original
277 Leute haben es durchsucht

Why Am I Getting an

Fehler beim Rendern der Unterstrich-Vorlage: „Variable nicht definiert“

Problem:

Sie versuchen, einen Unterstrich zu verwenden Vorlage zum Rendern von HTML, es tritt jedoch der Fehler „Variable nicht definiert“ auf. Der von Ihnen verwendete Code ist:

var V = Backbone.View.extend({
  el:'body',
  render: function () {
    var data = { lat: -27, lon: 153 };
    this.$el.html(_.template('<%= lat %> <%= lon%>', data));
    return this;
  }
});

var v = new V();

v.render();
Nach dem Login kopieren

Antwort:

Das Problem liegt darin, wie Unterstrichvorlagen gerendert werden. In früheren Versionen von Underscore konnten Sie eine Vorlage auf einmal analysieren und ausfüllen, in modernen Versionen hat sich dies jedoch geändert.

Um den Fehler zu beheben, müssen Sie Folgendes tun:

  1. Kompilieren Sie die Vorlage mit _.template.
  2. Führen Sie die zurückgegebene Funktion aus, um die ausgefüllten Daten zu erhalten Vorlage.

So sollte der Code aussehen:

var V = Backbone.View.extend({
  el:'body',
  render: function () {
    var data = { lat: -27, lon: 153 };
    var tmpl = _.template('<%= lat %> <%= lon%>');
    this.$el.html(tmpl(data));
    return this;
  }
});

var v = new V();

v.render();
Nach dem Login kopieren

Dieser aktualisierte Code rendert die Vorlage korrekt anhand der bereitgestellten Daten.

Das obige ist der detaillierte Inhalt vonWarum erhalte ich die Meldung „Fehler beim Rendern der Unterstrichvorlage: Variable nicht definiert'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage