К примеру, есть роутер с 2 страницами. Его делаем так:
app.Workspace = Backbone.Router.extend({
routes: {
'': function() {
new app.ShuffleView();
},
'shuffle': function() {
console.log('i\'am shitcoder!');
}
}
});
app.router = new app.Workspace();
Backbone.history.start({
pushState: true
});
Я думал, что если pushState включен, то бекбон сам начнёт перехватывать клики по ссылкам вида /shuffle и предотвращать перезагрузку страничек, но этого не происходит. Тем не менее, роутер без pushState работает как надо и, к примеру, если в консоли ввести так:
app.router.navigate('/shuffle')
то роут срабатывает и код прописанный в роуте выполняется.
Учитывая то, что бекбон весьма минималистичный, я подумал, может они сами такое подразумевали и что я сам должен отлавливать клики по внутрисайтовым ссылкам и вызывать событие с app.route.navigate, но это же чёртов маразм, или нет?