2014-10-07 2 views
1

У меня есть существующее приложение, которое использует Mustache.js для шаблонов, и мне нужно условно отобразить список из данных массива (json), поступающих с сервера. Возможно ли это с Усы?Усы - условно отобразить список из данных массива

Некоторые примеры данных:

"Preferences": ["pref-red", "pref-blue"] 

достаточно просто к выводу, что с помощью:

<ul class="plain"> 
    {{#Preferences}} 
    <li>{{.}}</li> 
    {{/Preferences}} 
</ul> 

Но что я действительно хочу сделать, это условно вынести соответствующие части статического списка на основе любых предпочтений данные возвращаются. Некоторые действительно немой код псевдо:

<ul class="plain"> 
    {{#Preferences}} 
     {{if pref-red}}<li class="icon red bell">Red</li>{{/if}} 
     {{if pref-green}}<li class="icon green car">Green</li>{{/if}} 
     {{if pref-blue}}<li class="icon blue cat">Blue</li>{{/if}} 
     {{if pref-yellow}}<li class="icon yellow flower">Yellow</li>{{/if}} 
     {{if pref-purple}}<li class="icon purple house">Purple</li>{{/if}} 
    {{/Preferences}} 
</ul> 

Что бы в этом случае выход в браузере как:

<ul class="plain"> 
    <li class="icon red bell">Red</li> 
    <li class="icon blue cat">Blue</li> 
</ul> 

Я знаю Усы не имеет, если условия, но это может быть достигнуто в усов? Я хотел бы сохранить его до Усы, если это возможно (уменьшить, повторно использовать, переработать).

ответ

0

Нет, это не может быть достигнуто Усыстом с вашими необработанными данными, как есть.

Ваши два варианта:

  • Transform ваши входные данные так, что она может быть оказана усов.
  • Изменить двигатель рендеринга. Вы сами добавили тег handlebars.js на свой вопрос: у вас уже есть ответ.
Смежные вопросы