单击视图中的切换模板

时间:2014-01-06 20:46:04

标签: backbone.js

我想要一个包含摘要和详细信息div的视图,最初我将显示摘要,其中包含按钮详细信息,单击我正在替换视图模板和调用渲染功能的详细信息,这是切换模板的正确方法还是有更好的方法方式。

 <script type="text/javascript">

var viewTemplate= {
    name:'#template1'
}

var ContentView = Backbone.View.extend({
    el: $('#content'),
    initialize: function(){
        this.render();
    },
    render: function(){
        var template = _.template($(viewTemplate.name).html());
        this.$el.html(template);
        return this;
    },
    events:{
        "click #showMore": "showMore",
        "click #showLess": "showLess"

    },
    showMore:  function(){
        viewTemplate.name='#template2';
        this.render();
        console.log(viewTemplate.name);
    },
    showLess:function(){
        viewTemplate.name='#template1';
        console.log(viewTemplate.name);
        this.render();
    }
});

var appView = new ContentView();

1 个答案:

答案 0 :(得分:0)

您是否考虑过向州视图添加州属性?通过应用程序中的更改或事件设置状态。

渲染函数可以根据状态渲染正确的视图。每个案例都可以有自己的模板。似乎更容易维护。