ホームページ > 記事 > ウェブフロントエンド > 「アンダースコア テンプレート レンダリング エラー: 変数が定義されていません」というメッセージが表示されるのはなぜですか?
問題:
アンダースコアを使用しようとしています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 では、一度にテンプレートを解析して入力できましたが、最新のバージョンではこれが変更されました。
エラーを解決するには、次のことを行う必要があります:
コードは次のようになります:
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 中国語 Web サイトの他の関連記事を参照してください。