0

如何检查get()返回的值?

例如,我可以这样做吗(假设已经定义了一个模型):

var someModel = new MyModel();

if (someModel.get('title') === 'sample number one') {
    this.$el.html(_.template($('#template-one').html());
}

if (someModel.get('title') === 'sample number two') {
    this.$el.html(_.template($('#template-two').html());
}

或者有更好的方法吗?

另外,如果可能的话,我可以用switch(myVar){ ... }?

非常感谢

4

1 回答 1

0

您应该在模型上收听“更改”事件,然后切换模板并在视图上运行重新渲染。

var someModel = new MyModel();

someModel.on('change', this.onModelChange);

.........

onModelChange: function(model){
    if (model.get('title') === 'sample number one') {
        this.template = _.template($('#template-one'));
    }

    if (model.get('title') === 'sample number two') {
        this.template = _.template($('#template-two'));
    }

    this.render();
}
于 2013-09-24T12:18:49.810 回答