5

Я пытаюсь найти способ, чтобы разобрать по-разному в зависимости от индекса массива, как четное или нечетное числоНечетные и даже номер помощник сравнения для Рули

Я смотрел на эту http://assemble.io/helpers/helpers-comparison.html и в надежде найти что-то вроде этого:

{{#each array}} 
{{#if_odd {{@index}}}} 
    {{this}} is odd 
{{else}} 
    {{this}} is even 
{{/if_odd}} 
{{/each}} 

Меня не волнует синтаксис, но надеюсь, что моя идея натолкнулась. Любая помощь? Благодарю.

+1

Оставить свой 'is_odd' а затем '{{#is_odd @index}}' должен работать. Вы знаете что-нибудь о написании помощников? Проводили ли вы какие-либо исследования по написанию собственных помощников? –

+0

Да, я предположил, что использование '{{#if_odd {{@index}}}}' неверно и '{{#if_odd @index}}' правильно. Неудивительно, почему я не мог заставить его работать изначально. –

+0

Проверьте мою собственную реализацию помощника для meteor 1.3+, http://stackoverflow.com/a/39175773/2305243 Это специально для разработчиков Meteor. –

ответ

17

Я создал этот помощник, и она работала

Handlebars.registerHelper('if_even', function(conditional, options) { 
    if((conditional % 2) == 0) { 
    return options.fn(this); 
    } else { 
    return options.inverse(this); 
    } 
}); 

Просто последовал условный помощник здесь http://handlebarsjs.com/block_helpers.html

Я пытался сделать это на основе mu is too short предложение:

{{#if_even @index}} 
Смежные вопросы