根据标志动态创建主干路由

时间:2019-04-01 17:08:33

标签: backbone.js routes

仅在登录用户有权查看特定路由的情况下,我才尝试为用户动态创建主干路由。在我当前的实现中,我已经创建了路由并调用了相应的路由功能,在该功能中将检查,如果用户没有所需的特权,如果没有将其重新路由到默认页面。我可以根据条件自己创建路由,这样就不必每次都检查用户是否具有适当的特权。

secondary

1 个答案:

答案 0 :(得分:2)

阅读主干js文档后想到的问题的解决方案如下:

var GlobalRouter = Backbone.Router.extend({
initialize: function () {
    this.route('*path','default',showDefault);
    if (permission1) {
        this.route('menu1', 'menu1', showMenu1);
    }
    if (permission2) {
        this.route('menu2', 'menu2', renderMenu2);
    }
    if (permission3) {
        this.route('menu3', 'menu3', renderMenu3);
    }
}
});

创建路由就像这样,这意味着如果用户没有查看特定路由的权限,则无需再次检查权限,因为不会发生路由,因为它永远不会创建。