Комментарии 5
А можно в ручную возвращаться к предыдущему экрану?
Конечно.
Либо откусить последний элемент от массива, либо в путь засеттить конкретный экран:
Допустим, есть путь.
path == ["first", "second", "third", "fourth"]
Либо откусываем "fourth"
model.path = ["first", "second", "third"]
Либо сеттим "third"
model.path = ["third"]
Мне статья помогла понять, как кастомизировать данные для переходов на экраны. Спасибо.
Так же я сделал форк, чтобы продемонстрировать передачу параметров на экраны (это важный момент) и кроме того добавил диплинки, потому как использовать координатор имеет смысл именно совместно с диплинками, ссылка ниже на форк
https://github.com/sofbix/NaviTest
Согласен с тем, что координатор очень удобен для перемещения при помощи DeepLink. Но в своих проектах я использую несколько иной подход для реализации DeepLinks - каждый переход представлен объектом, который содержит в себе команду вызова координатора. Т. е. менеджер DeepLink ничего не знает о пути навигации - он вызывает команду, которая сохраняет параметры и вызывает, в свою очередь, координатор с нужным шагом.
iOS: Навигация по-новому