Ember オブジェクトをハンドルバー ヘルパーに渡したいのですが、以下に示すようにヘルパーを使用しましたが、正しいオブジェクトを受け取りません。コンソールにオブジェクトの名前を出力するだけです。以下のコードを参照してください
//ember helper
Ember.Handlebars.registerHelper('act', function (value) {
console.log(value); //It prints as item.label
return value+"1";
});
//template
{{#each item in content}}
<li ><a {{bindAttr href="item.link"}}>{{act item.label}}</a></li>
{{/each}}
// Ember model which i am using
App.AllRoutes = [Ember.Object.create({
label: "index",
link:"#/",
}),
Ember.Object.create({
label: "second",
link: "#/second",
}),
更新 srinivasan ソリューションは機能しますが、以下に示す問題では機能しません。registerBoundHelper はスクリプト要素で値を返します。そのため、タグ内では使用できません。他に助けはありますか?
//ember helper
Ember.Handlebars.registerBoundHelper('act', function (value) {
console.log(value); //It prints as item.label
if (value == "somevalue"){ return new Handlebars.SafeString("class='active'"); }
});
//template
{{#each item in content}}
<li {{act item.label}} ><a {{bindAttr href="item.link"}}>{{label}}</a></li>
{{/each}}
Ember.VERSION : 1.0.0-rc.7、Handlebars.VERSION : 1.0.0 を使用しています
前もって感謝します...