Расширение VSTS/TFS - Отражение изменений в Grid/Board без обновления всей страницы

Я написал расширение для VSTS/TFS, которое добавляет контекстное меню для создания дочерних рабочих элементов. Создание рабочих элементов работает хорошо, но изменение не отражается в таблице или доске, пока я не выполню обновление всей страницы.

Есть ли способ обновить только затронутые рабочие элементы (что-то похожее на обновление, выполняемое элементом меню "+")?

3 ответа

Решение

Насколько я знаю, в настоящее время это невозможно.

Я долго боролся с этим вопросом, прежде чем сдаться, и просто сказал своим пользователям нажимать F5 после создания новых рабочих элементов. NavigationService - лучшая альтернатива, которую я знаю.

Нет никакого способа достичь этого. Если вы откроете две страницы и нажмете кнопку "+", чтобы добавить два разных дочерних рабочих элемента с двух страниц одновременно, вы обнаружите, что затронутый рабочий элемент не обновлен в действительности, он просто показывает новый добавленный элемент. И вы не можете контролировать поведение в Grid/Board, так как расширения VSTS размещаются в iframe, который является кросс-источником.

Для вашего конкретного случая это вам не поможет. Однако, если кто-то сталкивается с этим вопросом в поисках способов обновления рабочего элемента, вы можете использовать метод службы формы рабочего элемента "refresh":

https://www.visualstudio.com/en-us/docs/integrate/extensions/reference/client/api/tfs/workitemtracking/services/workitemformservice

Этот сервис является средством взаимодействия с текущей активной формой рабочего элемента. Таким образом, это обновление будет работать с рабочим элементом, который открыл пользователь.

Другие вопросы по тегам