В данной маленькой заметке рассмотрю примеры использования маршрутизаторов Backbone.
Часто в веб-приложении необходимо разделить логику, привязав определенные модели и представления или отдельное состояние приложения к определенным адресам. Для всего этого используется объект Backbone.Router
Описание маршрутов
Создавая свой маршрутизатор, нужно расширить Backbone.Router, добавив в него описания маршрутов и действий:
|
|
Сами маршруты могут быть динамическими:
|
|
Связывание маршрутов и действий
Используя функцию on мы должны связать событие перехода по некоторому адресу с некоторым действием. Так, описав в списке маршрутов:
|
|
необходимо описать событие:
|
|
Это означает, что при переходе по адресу #/profile/10 будет генерироваться событие route:viewProfile, которое будет обработано соответствующей функцией, принимающей в качестве аргументов id маршрута.
Во время загрузки страницы, после того, как приложение создаст все необходимые ему маршрутизаторы, нужно вызвать Backbone.history.start() или Backbone.history.start({pushState: true}), чтобы задать начальное состояние приложения.
Заключение
Как видим, достаточно просто описать все необходимые действия приложения, пользуясь только маршрутизаторами, не используя дополнительные страницы или скрипты.