Как выполнить условия IF / ELSE внутри LOOP в шаблонах golang? - PullRequest
0 голосов
/ 26 июня 2018

Я попытался сделать этот тест, чтобы выяснить, как создать такие условия:

<h1>Country Index</h1>

<style>
.odd{
    background: orange;
    color: black;
    font-size: 1.5em;
}
.even{
    background: rgb(0, 121, 235);
    color: white;
    font-size: 1.5em;
}
</style>

<ul>
    {{ range $index, $item := .Tee }}
        {{ if $index % 2 == 0 }}
            <li class="even">{{ $index }} - {{ $item }}</li>
        {{ else }}
            <li class="odd">{{ $index }} - {{ $item }}</li>
        {{ end }}
    {{ end }}
</ul>

Я получил эту ошибку " неожиданный"% "в операнде ".

Есть предложения, чтобы решить эту проблему?

1 Ответ

0 голосов
/ 27 июня 2018

К сожалению, вы не можете использовать операторы, такие как +, -, *, / или% в шаблонах. Вместо этого вам нужно написать пользовательские функции и использовать funcMap, чтобы перенести их в ваш шаблон.

Вот пример на игровой площадке Go, который обнаруживает даже целые числа, примененные к слегка измененной версии текста вашего шаблона.

https://play.golang.org/p/LWEhE_TI31o

...