У меня есть компонент с левой и правой панелью на больших устройствах. Правая панель - это выбранный компонент слева.
На небольших устройствах видно только левое устройство, а щелчок по элементу списка открывает справа. нажатие на программную кнопку возврата в приложении просто очищает выбранный компонент, в результате чего левая панель снова просматривается.
Все по одному и тому же маршруту.
То, чего я хочу достичь сейчас, - это то же поведение для кнопки возврата браузера / мобильного телефона. Я думал о реализации CanDeactivationGuard, который возвращает false, если это небольшое представление и выбран элемент. Однако для маршрутизации следует применять только кнопку возврата. Как я могу определить в CanDeactivate, был ли источником маршрутизации кнопка возврата?
Может быть, я мог бы использовать что-то еще вместо охранника?
Edit:
Между тем я заметил, что Guard - это не вариант, потому что компонент, который я хочу защитить, - это не компонент маршрута, а дочерний компонент.
Не сложно узнать, была ли нажата спина. Это на самом деле очень просто (ключевое слово popstate). Сложной задачей является предотвращение маршрутизации в этом случае.