Backbone js路由器-组织视图的更好方式
Backbone js router - better way to orginize views
这是我用主干路由器组织4个视图和4个链接的方法
var LinksRouter = Backbone.Router.extend({
routes:{
"classes" : "classes",
"profile" : "profile",
"reportcard" : "reportcard",
"newclasses" : "newclasses",
},
classes : function(){
$(".viewable").hide();
$(".clickable").removeClass("active");
$("#classes-view").show();
$("#classes-link").addClass("active");
},
profile : function(){
$(".viewable").hide();
$(".clickable").removeClass("active");
$("#profile-view").show();
$("#profile-link").addClass("active");
},
reportcard : function(){
$(".viewable").hide();
$(".clickable").removeClass("active");
$("#reportcard-view").show();
$("#reportcard-link").addClass("active");
},
newclasses : function(){
$(".viewable").hide();
$(".clickable").removeClass("active");
$("#newclasses-view").show();
$("#newclasseslink").addClass("active");
}
});
var links = new LinksRouter();
Backbone.history.start();
它看起来乏味而且效率不高。有没有一种更好的方法可以用主干js实现这一点?
我相信有很多方法。。怎么样:
var LinksRouter = Backbone.Router.extend({
routes:{
":subview" : "viewSet", // or "/:subview" ?
},
viewSet : function(subview){
$(".viewable").hide();
$(".clickable").removeClass("active");
$("#"+subview+"-view").show();
$("#"+subview+"-link").addClass("active");
}
});
var links = new LinksRouter();
Backbone.history.start();
相关文章:
- 您有更好的动态方式来缩短复杂的代码jquery吗
- 如何创建更好的方式来维护基于我的代码访问的最后一个页面
- Javascript数学不起作用,更好的方式来执行操作
- jquery悬停后恢复到原始图像是更好的方式
- 在创建 toLowerCase 函数时,一种方式比另一种方式更好
- 可能是更好的方式来编码这个棘手的切换按钮
- 哪种方式在Javascript,字符串连接或数组中更好
- 我正在设置计时器,但我以错误的方式进行.所以请给我更好的方法来做到这一点
- 用Javascript更好的方式编写这个动画
- 如何通过引用传递超时?或者更好的实施方式
- 对自定义事件作出反应的更好方式
- Backbone js路由器-组织视图的更好方式
- 如果一个函数的大部分执行是以输入为条件的,那么下面哪一种是更好的实现方式
- 实时更新的Facebook页面点赞数-->任何更好的方式
- 更好的处理方式'这'在Javascript的闭包中
- 更好的方式导入JavaScript和CSS文件使用CDN或从本地机器
- 组合优于继承,这是向视图添加额外功能而不诉诸继承的更好方式
- 在我的例子中,这是显示动态单选按钮的更好方式
- 写回退选择器的更好方式
- 子对象访问父对象的更好方式