2013-08-29 3 views
2

Есть ли какая-либо возможность в Durandal, чтобы обнаружить, что нажата кнопка «Назад»? Я проверил модуль router, но, к сожалению, не нашел индикатора обратной навигации.Как обнаружить кнопку «Назад» в Durandal

Мне нужна эта функциональность в activate() метод. В случае нажатия кнопки «Назад» я не буду отправлять дополнительный запрос на сервер, но попробуйте загрузить данные из кеша.

+1

Я не думаю, что вы можете обнаружить кнопку «назад» конкретно, но маршрутизатор имеет 'navigatingBack' как свойство. – Tyrsius

+0

Вы сохраняете много своего времени с помощью своего драгоценного комментария. Печально, что я не мог найти эту собственность, документально зафиксированную где угодно. Это потому, что его нельзя использовать с производством? – patryk

ответ

1

Вы можете использовать Jquery, чтобы найти, что:

$(window).on("popstate") 

Вы можете написать свой собственный сервис, который будет переключать состояние глобального флага на основе того, как навигация происходит. Когда навигационная кнопка «назад» устанавливает флаг в 1 и отменяет его, если его нет.

+0

Спасибо! Я выбрал немного другой подход с использованием события * onbeforeunload *, но это почти то же самое. –

Смежные вопросы