Как я могу вернуться к определенному компоненту или записи backstack в Nativescript-vue? - PullRequest
0 голосов
/ 03 апреля 2019

У меня есть несколько шагов (шаги являются динамическими, скажем, его 4) мобильных экранов, на которых я могу $navigateBack() от шага 4 до шага 3, шага 3 до шага 2, шага 2 до шага 1 при нажатии стрелки назад. так что работает нормально.

Теперь после выполнения каждого шага я могу $navigateTo() напрямую перейти к главному экрану (от которого я перехожу к шагам), но после того, как я нажму на стрелку назад, переход к предыдущей записи в стеке, что означает последний шаг 4. Я хочу предотвратить это и хотите перемещаться, чтобы извлечь предыдущий экран основного экрана.

Если я использую флаг clearHistory на $navigateTo(), он полностью очищает историю навигации.

Если я использую флаг backstackVisible, он останавливает навигацию по внутренним шагам назад.

Есть ли какой-нибудь способ, которым после завершения последнего шага я могу перейти к главному экрану, а затем при повторном нажатии я могу попасть на правильный предыдущий экран основного экрана? После выполнения шага 4, Как очистить стек только всех динамических шагов?

Может кто-нибудь объяснить мне, как options и backStackEntry работают в $ navigateBack (options, backstackEntry = null), поскольку в https://nativescript -vue.org / en / docs / routing / manual-routing / # не добавлено никаких подробностей navigateback

enter image description here

Любая помощь будет оценена.

Ответы [ 2 ]

0 голосов
/ 04 апреля 2019

В вашем конкретном случае, я думаю, что было бы более разумно открывать шаги в модале, который имеет свою собственную рамку. Таким образом, стек навигации в модальном отделении полностью отделен от вашего основного стека навигации и позволяет вам перемещаться вперед / назад по мере необходимости. Когда вы закончите с шагами, вы можете закрыть модальный и вернуть результат, и ваш основной стек навигации не будет затронут!

Я создал минимальную демонстрацию предложенного решения здесь: https://play.nativescript.org/?template=play-vue&id=SJdejN

0 голосов
/ 04 апреля 2019

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

...