Неправильные ссылки, созданные ui-sref, который находится внутри шаблона ui-grid - PullRequest
0 голосов
/ 26 октября 2018

Имеет неприятную ошибку, из-за которой ui-sref маршрутизатора UI создает неправильные ссылки для строк таблицы в сетке пользовательского интерфейса, начиная с 16-й строки.

У меня есть ui-grid (v.4.6.3) который должен представлять список элементов.Каждый элемент может иметь ссылку на какую-либо сущность (например, компанию), а когда пользователь нажимает на эту ссылку, открывается информационное окно для этой сущности.Таблица в страницах, 15 элементов на странице.Backend отправляет эти данные на страницах, используя функции Page, предоставляемые Spring.

Следующие две функции вызываются из компонента Angular и подготавливают данные для ui-grid, а результат присваивается grid-options.data.

* 1010.*

tabView.viewNameInfo - это другой компонент, отвечающий за страницу, который представляет информацию о связанной сущности.

Вот как выглядит ссылка в ячейке таблицы через Chrome> Inspect:

<a ng-show="true"
    ui-sref="tabView.viewNameInfo({viewName: 'entity/company', id: '8'})" class="ng-binding"
    href="#!/entity%2Fcompany//1/info">Some Company</a>

Проблема в том, что этот идентификатор (идет после // в атрибуте href).Параметры внутри ui-sref верны - ссылка должна указывать на компанию с ID = 8, но ссылка в href указывает на ID = 1, что неверно.Это появляется только для элементов, которые находятся либо на второй странице таблицы и далее, либо в 16-й строке и далее, если все элементы отображаются на одной странице.

Был бы признателен за помощь или, по крайней мере, вектор, гдепоиск.

UPD.Удалось найти обходной путь, добавив ng-if="visible" к блоку ui-grid в html.Когда таблица получает данные, переменная visible равна false, а когда данные получены, visible устанавливается на true.Таким образом, все ссылки в таблице верны на всех страницах.Однако это приводит к миганию таблицы при автоматическом обновлении, так что это только временное решение.

...