以下被提议作为逻辑AND / OR多arg Handlebars.JS助手:
Handlebars.registerHelper({
and: function () {
return Array.prototype.slice.call(arguments).every(Boolean);
},
or: function () {
return Array.prototype.slice.call(arguments).some(Boolean);
}
});
这对我不起作用,因为我需要将其称为
{{#if (or questionType 'STARTTIME' 'ENDTIME') }}
{{#if (or questionType 'STARTTIME' 'ENDTIME' 'ARGUMENT3' 'ARGUMENT4') }}
换句话说,
T 他的第一个arg总是我正在检查,例如。
return(questionType == arg1 || questionType == arg2 || questionType == arg3 ...)
换句话说,我不能像这样写一个愚蠢的2-param或(..)/和(..),
Handlebars.registerHelper('or', function(a, b, c) {
if(a == b || a == c)
return true;
else
return false;
});
它应该是多参数,并且始终检查第一个参数。有什么想法吗?