如何在其他函数中重定向到骨干路由器

How to redirect to Backbone router inside some other function

本文关键字:路由器 重定向 其他 函数      更新时间:2023-09-26

快速提问。我有路由器,它重定向到应用程序的不同部分。一个是游戏,一个是菜单等等。

我现在想要一个简单的函数在javascript中重定向到#game或#menu。我知道我可以使用模型与。set功能,但这仍然工作相同的方式吗?

这是我想调用重定向的文件:

var Controls = BaseView.extend({
    id: "controls",
    template: require('./controls.tpl'),
    events: {
      'click #game': 'gotoGame',
      'click #menu': 'gotoMenu'
    },
    gotoGame: function() {
        //Redirect to #game
    }
});

router在game_router文件中,如下所示:

var Router = BackboneRouteControl.extend({
    routes: {
        'menu': 'menu#index',
        'game': 'game#show'
    }
})

那么我如何在一个函数中重定向到"someaddress"/#game ?

使用Router.navigate。在你的例子中应该是这样的:

routerInstance.navigate("game", {trigger: true});

http://backbonejs.org/Router-navigate