Магистральный маршрутизатор не отправлен? - PullRequest
0 голосов
/ 07 марта 2012

Я новичок в магистрали 0.9.1.Я обнаружил, когда я меняю хэш, и я не могу вызвать изменение хэша в моей демонстрации.Мой URL-адрес http://[. ..] / backbone / # help.Я думаю, что должен получить предупреждение «помощь», но я не.

$(function() {
    var App = {
        Controllers:{},
        initialize: function(){
            new App.Controllers.Routes();
            var h = new Backbone.History();
            h.start({root: '/backbone/'});
        }
    };

    App.Controllers.Routes = Backbone.Router.extend({
        routes: {
            "help":                 "help",
            "search/:query":        "search",
        },

        help: function() {
            alert("help");
        },

        search: function(query) {
            alert("search");
        }
    });

    App.initialize();
});

Есть ли какое-то недопонимание или неправильное использование?

1 Ответ

1 голос
/ 08 марта 2012

Вам не нужно создавать экземпляр объекта History самостоятельно. Кроме того, если вы не используете pushstate, вам не нужно указывать root в опциях запуска.

Итак, ваш метод инициализации должен выглядеть следующим образом:


        initialize: function(){
            new App.Controllers.Routes();
            Backbone.history.start();
        }
...