【发布时间】:2012-08-08 23:18:50
【问题描述】:
我想通过更改 url 来更改我的主干应用程序的当前页面。我已经设置了路由,当我更改 url 时,我的页面正在更改,预计每次我访问给定路由时,都会向 dom 呈现一个新视图。
我的路由器:
myApp.Application = Backbone.Router.extend({
routes: {
'' : 'home'
//etc
},
initialize : function() {
myApp.dom.$container = $('#container');
myApp.dom.$container.empty();
},
home : function() {
myApp.loginView = new myApp.views.home();
myApp.dom.$container.append(myApp.home.render().el);
}
})
我是否认为我需要在渲染之前检查(例如)myApp.loginView 是否存在?
类似:
home : function() {
if (!myApp.loginView) {}
myApp.loginView = new myApp.views.home();
myApp.dom.$container.append(myApp.home.render().el);
} else {
//just show it
}
}
..为我的每条路线都这样做?
谢谢!
【问题讨论】:
-
我完全按照你说的做,检查已经渲染的视图
-
是的,正如@ClaudiuHojda 所说,我也是:).. 看看这个问题stackoverflow.com/questions/11796289/… 我认为是重复的
-
酷 - 这只是一个理智/最佳实践检查。谢谢。