0
我試圖在Handlebars中創建if x in JSON
語句。它的工作原理,但它不會返回正確的選項。 這是index.html的:自定義Handlebars.js助手不返回options.fn
{{#dinsdag}}
{{#each uitval2}}
{{@key}}
{{/each}}
{{#isIn 7 uitval2}}
<p>klopt</p>
{{else}}
<p>mwah</p>
{{/isIn}}
{{/dinsdag}}
這是data.js:
$(function(){
var templateScript = $("#entry-template").html();
var theTemplate = Handlebars.compile(templateScript);
var context = { "dinsdag": {
"uitval2": {
"7": "1",
"9": "1",
"11": "1"
},}}
var html = theTemplate(context);
$('.test').html(html);
$(document.body).append(html);
})
最後這helper.js,哪裏出了問題應該是。
Handlebars.registerHelper('isIn', function(waarde, inWaarde, options){
$.each($.parseJSON(JSON.stringify(inWaarde)), function(k, v) {
if (parseInt(k) === parseInt(waarde)){
console.log("true");
return options.fn(this);
}
});
console.log("false");
return options.inverse(this);
});
它在控制檯返回True
,但它返回的HTML渲染的else
選項。
謝謝,我習慣了蟒蛇,這不是一個問題。我不能給予賞金,明天你會明白的! –
我很好,謝謝! – martinczerwi