Клиентская и серверная маршрутизация
Маршрутизация на стороне сервера означает, что сервер отправляет ответ на основе URL-адреса, который посещает пользователь. Когда мы нажимаем на ссылку в традиционном веб-приложении, отображаемом на сервере, браузер получает ответ HTML от сервера и перезагружает всю страницу с новым HTML
Однако в одностраничном приложении (SPA) клиентский JavaScript может перехватывать навигацию, динамически получать новые данные и обновлять текущую страницу без полной перезагрузки страницы. Обычно это приводит к более быстрому взаимодействию с пользователем, особенно для случаев использования, которые больше похожи на настоящие «приложения», где ожидается, что пользователь будет выполнять множество взаимодействий в течение длительного периода времени
В таких SPA «маршрутизация» осуществляется на стороне клиента, в браузере. Маршрутизатор на стороне клиента отвечает за управление отображаемым представлением приложения с помощью API-интерфейсов браузера, таких как History API или hashchangeevent
Официальный маршрутизатор
Vue хорошо подходит для создания SPA. Для большинства SPA рекомендуется использовать официально поддерживаемую библиотеку Vue Router. Более подробную информацию можно найти в документации Vue Router
Простая маршрутизация с нуля
Если вам нужна только очень простая маршрутизация и вы не хотите использовать полнофункциональную библиотеку маршрутизации, вы можете сделать это с помощью динамических компонентов и обновить текущее состояние компонента, прослушивая hashchange события браузера или используя History API
Совет
Используйте маршрутизатор Vue (Vue Router), официальный маршрутизатор для Vue.js