Bckabone
ビュー製品があります:
Product = Backbone.View.extend({
templateBasic: _.template($("#pcard-basic").html()),
templateFull: _.template($("#pcard-full").html()),
initialize: function() {
this.render(this.templateBasic);
},
// ...
これが私のドラフトです:http://jsfiddle.net/challenger/xQkeP/73
完全なテンプレートを表示するためにそれらのいずれかが選択/選択解除されたときに、他のビューを非表示/表示して、コンテナの幅全体に拡張できるようにするにはどうすればよいですか?
コレクション全体にビューを使用する必要がありますか? イベント処理はどのように処理すればよいですか?
ありがとう!
編集
それが私の最終案です: http://jsfiddle.net/challenger/xQkeP/
しかし、よりエレガントな方法で同じ結果を達成できるかどうかはまだわかりませんか? 兄弟を非表示にすることは、それを解決する最良の方法ではないと思います。
viewBasic: function(e) {
e.preventDefault();
this.render(this.templateBasic);
if(this.switchedToFull) {
this.$el.siblings().show();
this.switchedToFull = false;
}
},
viewFull: function(e) {
e.preventDefault();
this.render(this.templateFull);
this.$el.siblings().hide();
this.switchedToFull = true;
}