Установить класс с помощниками в метеоре
Я делаю веб-приложение с метеором, и я хотел бы применить класс active в элементе li, если его значение равно переменной из переменной Session ('month')
<template name="Navbar">
<ul class="nav navbar-nav">
<li class="{{active}}"><a href="#myPage">Janvier</a></li>
<li class="{{active}}"><a href="#">Février</a></li>
<li class="{{active}}"><a href="#">Mars</a></li>
<li class="{{active}}"><a href="#">Avril</a></li>
<li class="{{active}}"><a href="#">Mai</a></li>
<li class="{{active}}"><a href="#">Juin</a></li>
<li class="{{active}}"><a href="#">Juillet</a></li>
<li class="{{active}}"><a href="#">Août</a></li>
<li class="{{active}}"><a href="#">Septembre</a></li>
<li class="{{active}}"><a href="#">Octobre</a></li>
<li class="{{active}}"><a href="#">Novembre</a></li>
<li class="{{active}}"><a href="#">Décembre</a></li>
</ul>
</template>
Моя переменная сессия дает мне месяц, и я хотел бы с помощником поставить класс "активный", если innerHtml равен переменной сеанса. Я не знаю, как получить значение "this" innerHtml.
Template.Navbar.helpers({
active: function() {
if(Session.get("month") === this.value) {
return "active";
}
}
});
Спасибо за помощь.
Йоанн
1 ответ
Решение
Вы можете передать переменную в свой вспомогательный класс и сравнить с переменной Session.
<template name="Navbar">
<ul class="nav navbar-nav">
<li class="{{active 'Janvier'}}"><a href="#myPage">Janvier</a></li>
...
</ul>
</template>
В вашем шаблоне вы можете использовать переменную.
Template.Navbar.helpers({
active: function(month) {
if(Session.get("month") === month) {
return "active";
}
}
});