2

ハンドルバーのランタイム ビルドを使用しており、登録済みのパーシャルを使用しようとしています。そうです:

Handlebars.registerPartial("path/partialname", Handlebars.templates["path/partialname"])

次のように部分的な名前にスラッシュを使用すると:

{{> path/partialname}}

エラーが発生します

The partial path.partialname could not be found [...]/lib/handlebars/handlebars.runtime

「/」は「.」に置き換えられているようです。

Handlebars.registerPartial 呼び出しを変更せずに、パーシャル内で「/」を使用するにはどうすればよいですか? ありがとう。

4

1 に答える 1

4

私がまとめた解決策:

// automaticly register all templates as partials, so we dont have to do it manually
// https://github.com/wycats/handlebars.js/issues/190
// also convert slashes to dots in the template name because this is how
// handlebars resolves partial names.
 _.each(Handlebars.templates, function(val, key){
    var key = key.replace(/\//g, ".")
    Handlebars.partials[key] = val
})
于 2012-06-30T02:02:04.750 に答える