Установить значение в ng-repeat для другого значения один раз (только при загрузке страницы)

0

У меня есть этот код;

<div ng-repeat="(key, entry) in entryDetails.Responses" class="responseEntry">
    <h4 ng-click="box=!box"><i ng-class="(!box ? 'fa fa-arrow-down' : 'fa fa-arrow-right')"></i> {{key}}</h4>
    <pre data-slide-toggle="box"><code>{{entry | json}}</code></pre>
</div>

Как я могу установить каждую переменную box box в другое значение (в этом случае false), поэтому мои переключатели закрываются при загрузке страницы?

Благодарю!

Теги:
toggle
angularjs-ng-repeat

1 ответ

1
Лучший ответ

может быть ng-init разрешит это.

ng-init="box = false"

он будет создавать переменную box в каждом повторении и инициализировать ее до true

<div ng-repeat="(key, entry) in entryDetails.Responses" class="responseEntry" ng-init="box = false">
    <h4 ng-click="box=!box"><i ng-class="(!box ? 'fa fa-arrow-down' : 'fa fa-arrow-right')"></i> {{key}}</h4>
    <pre data-slide-toggle="box"><code>{{entry | json}}</code></pre>
</div>

Единственное подходящее использование ngInit - для сглаживания специальных свойств ngRepeat.

  • 0
    Мое плохое, это должно было быть посвящено false . Я добавил начальное display: none в <pre> сочетании с вашим ng-init и теперь он отлично работает, большое спасибо!
  • 0
    бриз :) рад помочь тебе :)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню