Я хочу установить переменную за пределами ng-repeat и увеличить ее внутри ng-if. Только когда условие ложно, переменная должна увеличиваться.angularjs ng-repeat increment in if-condition
В Twig это выглядит следующим образом:
{% for plan in entity.plan %}
{% set spieltag = 0 %} <!-- sets the variable inside loop -->
{% if (plan.spieltag != spieltag) %}
<tr class="bg-info">
<td colspan="7">Spieltag: {{ plan.spieltag }}</td>
<td></td>
</tr>
{% set spieltag = spieltag +1 %} <!-- only increments when condition is false -->
{% endif %}
<tr>
<!-- some stuff that always shown
</tr>
{% endfor %}
В Угловое я есть тр-цикл:
<tr data-ng-repeat="row in liga.plan" data-ng-init="spieltag = 0">
<!-- shows all the stuff -->
</tr>
Я знаю, нг-INIT находится на том месте, но там, где я должен принять это и как я могу увеличить его только тогда, когда условие ложно?
данных из цикла:
[{
plan: [
{spieltag: 1, home: foo, guest: bar},
{spieltag: 1, home: foo1, guest: bar1},
{spieltag: 1, home: foo2, guest: bar2},
{spieltag: 2, home: bar, guest: foo},
{spieltag: 2, home: bar1, guest: foo1},
{spieltag: 2, home: bar2, guest: foo2},
]
}]
Это неправильный подход. Угловой способ делать вещи - отделить взгляд от бизнес-логики. Представление должно быть глупо, если данные не изменяются. Контроллер - это место для подготовки данных. С телефона я не могу создать пример для вас, поэтому комментарий не ответ. – bastijn
угловые могут запускать выражения сто раз, пока вы думаете один раз. Поставить счетчик в шаблон неправильным способом в угловом. – YOU