首頁 > web前端 > js教程 > 為什麼我收到'下劃線模板渲染錯誤:變數未定義”?

為什麼我收到'下劃線模板渲染錯誤:變數未定義”?

Patricia Arquette
發布: 2024-11-23 10:05:17
原創
278 人瀏覽過

Why Am I Getting an

下劃線模板渲染錯誤:「變數未定義」

問題:

您正在嘗試使用下劃線模板來呈現HTML,但遇到錯誤「變數未定義」。您使用的程式碼是:

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();
登入後複製

答案:

問題在於 Underscore 範本的渲染方式。在先前版本的 Underscore 中,您可以一次解析並填寫模板,但在現代版本中,這種情況發生了變化。

要解決該錯誤,您需要:

  1. 使用_.template編譯模板。
  2. 執行傳回的函數取得填滿的內容範本。

程式碼應如下所示:

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();
登入後複製

此更新的程式碼將使用提供的資料正確呈現範本。

以上是為什麼我收到'下劃線模板渲染錯誤:變數未定義”?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板