С помощью команды {{#if}}
можно сделать
так, чтобы определенный текст был показан,
если некоторая переменная имеет значение
true
, и скрыт, если false
.
Давайте посмотрим на примере.
Пусть в представление передается некоторая логическая переменная:
app.get('/page/', function(req, res) {
res.render('page', {
show: true
});
});
Давайте покажем некоторый текст, если значение
нашей переменной равно true
:
<div>
{{#if show}}
<p>hello</p>
{{/if}}
</div>
Команда else
Можно также использовать команду {{else}}
,
чтобы показать или один, или второй текст:
<div>
{{#if show}}
<p>text1</p>
{{else}}
<p>text2</p>
{{/if}}
</div>
Команда unless
Команда {{#unless}}
обратна команде
{{#if}}
, то есть показывает текст,
если значение переменной ложно:
<div>
{{#unless show}}
<p>text1</p>
{{/unless}}
</div>
Практические задачи
Пусть в представление передаются следующие переменные:
res.render('page', {
show1: true,
show2: false,
show3: true,
});
Пусть у нас есть три блока:
<div>
block 1
</div>
<div>
block 2
</div>
<div>
block 3
</div>
Сделайте так, чтобы каждый блок был видимым, если соответствующая ему переменная истинна.
Замечание
Описанные команды могут проверять переменные только на истину или ложь. Более сложные условия недоступны.