Я создаю клиент HTML и Javascript для работы в браузере, который общается с REST API. Я использую RouteMap для установки своих URL-адресов. Так что я держал конвенцию что-то вроде этого
http://mysite.com/#/{ResourceName}/[edit|view|list]/[Id]/
Я установил только один маршрут и получаю эти параметры в функции, связанной с hashchange. Большинство вещей работает нормально. Всего две проблемы, и я застрял из-за них.
- Если пользователь дважды щелкает одну и ту же ссылку, событие hashchange не срабатывает. Да, хэш не изменился, поэтому очевидно, что он не сработает. Но должно быть что-то, что можно сделать, а мне этого не хватает.
- Если я изменю что-то в пользовательском интерфейсе (например, вызову новые элементы div и скрою некоторые), для которого я не хочу менять хеш-ссылку, я потеряю эту историю и не смогу вернуться, правильно нажав кнопку «Назад».
Любая помощь будет признательна.