Я пытаюсь показать значок в таблице в соответствии с данными из базы данных. У меня есть функция, которая вызывает запрос и возвращает логическое значение, если эти данные существуют, если он существует, я хотел бы отображать значок в таблице. Проблема, с которой я сталкиваюсь, заключается в том, что когда я вызываю эту функцию, функция выполняется бесконечно, и я не совсем уверен, почему это происходит. Любая помощь будет высоко оценен!
Это таблица, в которой будет отображаться значок:
<table class="table table striped">
<thead>
<tr>
<th> ... </th>
<th> Exists? </th>
</tr>
</thead>
<tbody>
<tr ng-repeat="item in myList">
<td> ... </td>
<td>
<i ng-show="callFunctionThatReturnsBoolean(item)" class="glyphicon glyphicon-thumbs-up" aria-hidden="true">
</i>
</td>
</tr>
</tbody>
</table>
Вы можете использовать ng-show
. Когда ng-show condition
удовлетворяет на основе данных, тогда показать значок еще нет.
Я написал небольшой фрагмент кода на основе вашего требования.
Ввиду,
<td>
<span ng-show='item.flag'><i class="glyphicon glyphicon-user"></i></span>
{{item.flag}}
</td>
Обновить:
Обновлен плункер для использования метода для ng-show
.
Рабочий плунжер
Проблема в том, что ng-show
не должно быть привязано к вызову функции, поскольку он вызывает вашу функцию в каждом цикле дайджест: qaru.site/questions/1180958/....
Но я думаю, что лучшим подходом было бы вернуть модель из бэкэнд в ее окончательную версию и не делать такие запросы для определенных элементов списка.
callFunctionThatReturnsBoolean(item)
. Поэтому я просто написал демо, чтобы показать пример того, как скрыть / показать значки.