我正在使用触发器和主干,并尝试以编程方式导航到网址。这一切都发生在使用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方法只返回“file:// users / sign_up”形式的完整网址。
但没有任何内容记录到控制台,执行正常。我在这里错过了什么吗?
答案 0 :(得分:2)
将pushState与文件URL一起使用可能没有意义,我也不确定你为什么需要navigate_to函数。
尝试将pushState设置为false并使用路径的字符串进行导航,即:
BA.router.navigate("users/sign_up", {trigger:true});