8
次のコードは、Backbone.Marionette.ItemView
では正常に動作しますが、Mustache
では正しく動作しません。Backbone.Marionette.ItemView with Mustacheの使用方法
Backbone.Marionette.ItemView - no Mustache
私は同じコードが、Mustache
を使用してテンプレートのvaraibleのロードを使用したいと思います。ここで
は私のコードです:
Backbone.Marionette.ItemView - with Mustache
my codeは、なぜ動作しない理由を任意のアイデア?
おかげ
ソース(http://derickbailey.github.com/backbone.marionette/docs/backbone.marionette.html#section-115)を見ると、Backbone.Marionetteをオーバーライドするだけで十分だと思います。 TemplateCache.prototype.compileTemplate':http://jsfiddle.net/me4NK/78/より適切な方法は何ですか? – theotheo
これは、DOMからテンプレートを選択するデフォルトの動作を使用するかどうか、またはテンプレートを生の文字列として提供するかどうかによって異なります。この質問の場合、テンプレートは生の文字列なので、 'Renderer.render'をオーバーライドする方が適切です。テンプレートがDOM '
私は、私はちょうどこれで苦しんでいたとして、ここで答えビットを更新したいと思います。私はこの答えを参考にしていました。
は、ここに私の調査結果です:
ここで答えは(それはかなり古いですと理解しやすい)口ひげの現在のバージョン
はまた、私は完全に目的の動作ではないかもしれないMarionette.TemplateCache層をバイパスし、上記受け入れ答えのように、オーバーライドMarionette.Renderer.render見出さ。
ここMarionette.Renderer.renderメソッドのソースです:あなたはそれがMarionette.TemplateCache.get方法及び上記の答えはその機能を維持するために何もしないアクセス見ることができるように
。今
は、私の解決に取得する(注:上記の答えが必ずしも間違っていない。これはちょうど私の Marionette.TemplateCache層を維持するためのアプローチである):コメントは上記の提案として、compileTemplateを上書き代わりに:
Here's a working JSFiddle as proof。
フィヨルドでは、Marionette.TemplateCache.loadTemplateも一度だけ呼び出されることを証明するためにオーバーライドしました。関数本体にはデバッグ出力がいくつか追加され、元の機能のほとんど(エラー処理を除く)が再実装されます。
出典
2014-02-09 23:26:35 Aubricus
これは正解とマークする必要があります。 –