Как заставить маршрутизатор перемещаться по дополнительному «replaceUrl» для правильной работы? - PullRequest
1 голос
/ 13 мая 2019

У меня есть форма добавления контактов, к которой можно перейти с нескольких экранов в нашем приложении.

После отправки формы я выводю пользователя на экран, чтобы просмотреть добавленный контакт.

Когда пользователь затем использует кнопку «Назад», он должен вернуть его обратно на экран, с которого он возник.

Это может быть кнопка возврата Android или кнопка, которая вызывает функцию возврата RouterExtensions.

Я использовал дополнительную навигацию replaceUrl при переходе от формы к странице просмотра.

Я также пытался использовать skipLocationChange extra при переходе к форме, но это создает дополнительные проблемы.

Я создал простой поток страниц игровой площадки, который создает не совсем ту же проблему, но выдает ошибку, с которой я тоже не знаю, что делать:

https://play.nativescript.org/?template=play-ng&id=BfVcGZ&v=2

В нашем приложении, используя дополнительный replaceUrl, кнопка «Назад» переводит пользователя на нужную страницу.

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

В связанной игровой площадке я получаю сообщение об ошибке:

Невозможно повторно подключить ActivatedRouteSnapshot, созданный по другому маршруту.

Кажется, это говорит о том, что replaceUrl действительно удаляет страницу из таблицы маршрутов.

Однако страница еще не уничтожена, и поэтому приложение пытается показать страницу, которая не должна отображаться.

1 Ответ

0 голосов
/ 13 мая 2019

replaceUrl еще не поддерживается Page Router Outlet, имеется запрос открытой функции , вы можете зарегистрировать свой голос в этой функции и следить за ней для дальнейших обновлений.

...