История GWT: исторический жетон

История GWT: com.google.gwt.user.client.History имеет метод back(), который возвращает вас к предыдущему токену истории. Но есть ли способ получить значение предыдущего маркера истории? Или даже 2 шага предыдущей истории токена?

Я проверил реализацию метода back() на быстрые выводы, но это все, что есть в JS!

2 ответа

Решение

Используя класс History? Нет. Javascript не раскрывает эту информацию по соображениям безопасности. Вы не должны быть в состоянии шпионить за историей браузера пользователя. Тем не менее, вы могли бы использовать трюки с анализом истории и делать это, но это все взломы той или иной формы, и, насколько мне известно, не очень точны.

Лучше всего будет следить за состоянием истории вручную. Поддерживать стек посещенных состояний и с каждым изменением токена "нажимать" и с кнопкой "назад" выдвигаться. Тогда вы можете увидеть, где вы были ранее и даже дальше.

Если вы выходите за рамки простого изменения токенов и меняете страницы на своем сайте / в приложении, подумайте о том, чтобы вставить этот стек страниц в LocalStorage. При таком подходе вы можете даже отслеживать историю между обновлениями и посещениями.

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

как упоминалось в официальном документе

Другие вопросы по тегам