Handlebars compare helper
Handlebars compare helper
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 | Handlebars.registerHelper('compare', function (a, operator, b, options) { let result; switch (operator) { case '==': result = a == b; break; case '===': result = a === b; break; case '!=': result = a != b; break; case '!==': result = a !== b; break; case '>': result = a > b; break; case '<': result = a < b; break; case '>=': result = a >= b; break; case '<=': result = a <= b; break; default: throw new Error('Unknown operator ' + operator); } if (result) { return options.fn(this); // block runs if true } else { return options.inverse(this); // block runs if false } }); |