我尝试为用户动态创建 Backbone.js 路由,前提是登录用户具有查看该特定路由的权限。在我当前的实现中,我创建了路由并调用了相应的路由函数,在该函数中,我将检查用户是否具有所需的权限。如果没有重新路由到默认页面。我可以创建路由本身的基础上的条件,使我不必每次检查用户是否有适当的权限。
var Workspace = Backbone.Router.extend({
routes: {
"help": "help",
"search/:query": "search",
"search/:query/p:page": "search",
"default": "default"
},
help: function() {
if(!permission1){
router.navigate('default', true);
}
//write logic
},
search: function(query, page) {
if(!permission2){
router.navigate('default', true);
}
//write logic
},
//write logic for other routes
});
1条答案
按热度按时间qybjjes11#
我在阅读了backbone js文档后想出的问题的解决方案如下:
以这种方式创建路由意味着,如果用户没有查看特定路由的权限,则无需再次检查权限,因为路由不会发生,因为它从未创建。