Триггер и магистральный маршрутизатор с файлом://
Я работаю с триггером и магистралью и пытаюсь программно перейти на URL. Все это происходит с использованием протокола file://, поскольку все, что выполняется внутри, запускает только io.
Эта ручная навигация, однако, не вызывает функцию, связанную с маршрутом.
Мой роутер выглядит так
var BARouter = Backbone.Router.extend({
routes: {
"users/sign_in": "userSignin",
"users/sign_up": "userSignup",
"": "catchAll"
},
userSignin: function(){
},
userSignup: function(){
forge.logging.info("in user signup----");
},
catchAll: function(){
}
});
var app_router = new BARouter();
BA.router = app_router;
Backbone.history.start({pushState: true});
и я вручную перемещаюсь
BA.router.navigate(navigate_to("users/sign_up"), {trigger:true});
Метод navigate_to просто возвращает полный URL-адрес в форме "file://users/sign_up".
Но в консоль ничего не записывается, и выполнение протекает нормально. Я что-то здесь упускаю?
1 ответ
Решение
Использование pushState с URL-адресами файлов, вероятно, не имеет смысла, я также не уверен, зачем вам нужна функция navigate_to.
Попробуйте установить pushState в false и перемещаться по строке маршрута, например:
BA.router.navigate("users/sign_up", {trigger:true});