【问题标题】:Browser Button not triggering routes in Backbone浏览器按钮未触发主干中的路由
【发布时间】:2013-09-25 11:05:18
【问题描述】:

我正在使用 stackmob 的主干、jQuery 和 BAAS 开发一个 Web 应用程序。我遇到了浏览器按钮未触发主干路由的问题。当我使用router.navigate(url,{trigger:true}); 时,导航从一个视图顺利进行到另一个视图。以下是我的路线设置方式:

routes:{
    "":"home",
    ":query": "userProfile",
    ":query/:postsId": "postShow"
},

在我看来,我正在导航

router.navigate(userName+"/"+e.target.id, {trigger: true});

导航顺利进行,我到达了我的应用程序的第三个视图,但是浏览器的后退按钮和前进按钮出现问题,因为两者都不会触发路由方法。

路由回调是

home:function(e) {
    console.log("Route 1");

},
userProfile:function(query){
    console.log(query);

},
postShow:function(query,postsId){
    console.log("Route 3");
}

任何帮助将不胜感激。

【问题讨论】:

    标签: javascript jquery backbone.js


    【解决方案1】:

    您应该使用Backbone.Router 并确保您不会忘记 关于Backbone.history.start() 在启动您的应用程序时。

    一些有用的信息可以在herehere找到

    其实第二个链接不是文章,而是博客。还有那个家伙 写这篇文章的人似乎对这个话题很了解。

    来自backbone routes – detecting browser back button press

    【讨论】:

    • 在我的 router.js 中已经有了这个: var initialize = function(){ var app_router = new AppRouter(); Backbone.pubSub = _.extend({}, Backbone.Events); Backbone.history.start({ root:"/" }); };并且已经关注了上面的文章但是没有用。
    猜你喜欢
    • 2012-05-10
    • 2012-05-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-10-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多