Триггер и магистральный маршрутизатор с файлом://

Я работаю с триггером и магистралью и пытаюсь программно перейти на 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});
Другие вопросы по тегам