Подтвердить что ты не робот

Маршрутизатор с одной страницей без хеша и небольшой

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

  • Библиотека маршрутизатора jscript
  • Маршрутизатор, который НЕ делает hashtags/hashbangs
  • С example.com, являющимся моим сайтом, который обрабатывает что-то вроде:
  • Если javascript отключен, сервер возвращает действительную статическую html-страницу (также помогает с индексацией поиска), с аналогичными внутренними ссылками, которые сервер может обрабатывать сам < - эту часть, которую я могу сделать сам.
  • Если javascript включен, сервер возвращает одну и ту же статическую страницу, но маршрутизатор script теперь не позволяет щелчкам ссылок и обрабатывает сам запрос, используя, например, анонимную функцию (как в случае с большинством роутеров) где я мог бы заполнить DOM динамическими данными JSON через javascript.
  • Правильно обрабатывает историю.
  • Мало (я не хочу загружать обширную структуру, если у меня уже есть собственная ранее выбранная среда)

Есть ли там библиотека, которая существует? Я посмотрел на crossroads.js, который кажется большим, но он делает hashbangs/hashtags/хэши. Я посмотрел на Backbone.js, но с его многочисленными функциями и размером 6.5Kb, не слишком увлечен. Это у парня было довольно много на месте, но его библиотека казалось, не было хорошо поддержано. Я был довольно удивил эту быструю попытку, но он, похоже, не включал кроссбраузер - или хорошо поддерживаться. Там еще сотни, но я понятия не имею, какой из них я должен выбрать? Кто-нибудь еще пришел на эту довольно тривиальную функцию для одностраничных приложений?

4b9b3361

Ответ 1

Я нашел Page.

Страница - небольшая клиентская библиотека маршрутизации для использования со зданием одностраничные приложения (SPA). У этого есть простой API, который вдохновлен Экспресс. Он использует API истории HTML5 под капотом, который что позволяет создавать гладкие пользовательские интерфейсы, сохраняя при этом связываемые URL-адреса для разных страниц приложения.

Также кэширование состояния страницы, которое после хорошей реализации на моем конце работает очень аккуратно.

Ответ 2

Вот простой учебник, работающий вместе с History API. Поскольку вы можете избежать хэшей на своих URL-адресах, имейте в виду, что некоторые браузеры, как правило, перезагружают страницу, если URL-адрес изменяется.