我正在使用Backbone编写一个小型应用程序,它基本上只是一个带有两个页面的计算器。第一页显示一些文本输入,第二页显示结果以及一些用于微调的滑块。
我考虑过使用Backbone路由器,但是第二页不应该在没有在第一页输入必要值的情况下直接通过URL访问。将第一个视图卸载并从DOM中删除,然后实例化结果视图这种替代方案似乎有点混乱。
你会如何设计这样的应用程序?
我正在使用Backbone编写一个小型应用程序,它基本上只是一个带有两个页面的计算器。第一页显示一些文本输入,第二页显示结果以及一些用于微调的滑块。
我考虑过使用Backbone路由器,但是第二页不应该在没有在第一页输入必要值的情况下直接通过URL访问。将第一个视图卸载并从DOM中删除,然后实例化结果视图这种替代方案似乎有点混乱。
你会如何设计这样的应用程序?
保持简单,如果您不想通过网址访问第二个视图,则无需路由器。只需启动第一个视图,并在用户输入值时将其更改为第二个视图。
编辑:
假设您有两个视图,都带有渲染方法,可以通过该方法传递视图呈现的 DIV:
var View1 = Backbone.View.extend({
render: function(parent){
$(parent).empty().append(this.el);
}
ready: function(){
view2.render($('#mainPanel'));
}
})
var View2 = Backbone.View.extend({
render: function(parent){
$(parent).empty().append(this.el);
}
})
var view1 = new View1().render($('#mainPanel'));
var view2 = new View2()