У меня есть некоторые проблемы с отображением выпадающего меню с Ember.js и HtmlBars. Данные, которые у меня есть для меню, находятся в массиве, примерно так:
[{name: 'A', lvl: 0}, {name: 'B', lvl: 1}, {name: 'C', lvl: 0}, {name: 'D', lvl: 1}, , {name: 'E', lvl: 1}]
что должно привести к следующему html
<ul>
<li> <a> A </a>
<ul>
<li> <a> B </a> </li>
</ul>
</li>
<li> <a> C </a>
<ul>
<li> <a> D </a> </li>
<li> <a> E </a> </li>
</ul>
</li>
</ul>
и он будет иметь следующую структуру (с помощью css он станет хорошим раскрывающимся списком)
- A
- B
- C
- D
- E
Проблема в том, что HTMLbars не позволяет использовать следующие структуры
{{#if (condition1)}}
<ul class="d-menu" data-role="dropdown">
{{/if}}
{{#if (condition2)}}
</ul>
{{/if}}
Теперь я знаю, что это не ошибка, а решение проекта, но я не уверен, как преодолеть это ограничение и сделать то, что мне нужно? Единственный вариант, который я сейчас вижу, - это создать строку html в коде js, так как мне не разрешено изменять формат модели данных. Если есть возможность заменить HTMLbars чем-то другим, для меня это было бы приемлемым решением.