私はテンプレートを整理するために7〜8行のHTMLを出力するヘルパーを作成しています(DRYに準拠しています - ちょっと変わったwikka wikka)。ここでハンドルバーhelper in requireJS
が
今{{#each promotion.CampaignColors}}
{{{addOn . CampaignColorType.Code CampaignColorType.Name HexColor "some content" "a title"}}}
{{/each}}
アドオンヘルパーを呼び出す例ですが、私が理解から、コンテキスト後のすべてはオプションと呼ばれるハッシュする必要があります。ここに私のaddOn.jsしかし
define([
'handlebars',
'hbs!templates/addOn',
], function (Handlebars, AddOnTemplate) {
function addOn(context, options) {
var data = {};
var compiledTemplate = AddOnTemplate(data);
console.log(compiledTemplate);
return compiledTemplate;
}
Handlebars.registerHelper('addOn', addOn);
return new Handlebars.SafeString(addOn);
});
のスタブで、オプションは唯一の私の最初のパラメータが渡されているに設定されています。私は私のメソッドのシグネチャを変更する場合:
function addOn(context, key, displayName, value, content, title, test, options) {
...
}
..私の値のそれぞれが設定されている、およびオプションはNOW空のハッシュを持つオブジェクトになります。
明示的にparamsを宣言していますが、むしろハッシュを使用しています。どのようにこれを行うにはどのような考え? Handlebars doc on helpersから
options.hash
として利用可能となります私はそれを見逃した。ありがとう。 –