コレクション ビューとそのサブビューが完全にレンダリングされるまで、読み込みメッセージを表示したいと思います。
質問する
1144 次
2 に答える
1
emptyView
コレクションにアイテムが含まれていない場合にレンダリングするように指定できます。コレクションビューはこれを自動的に処理します。コレクションがゼロアイテムにドロップするのを見ると、代わりにこれをレンダリングします。これを使用して、「読み込み中」のメッセージを表示します。
LoadingMessageView = Backbone.ItemView.extend({
template: "#loading-message-template"
});
ItemView = Backbone.ItemView.extend({
template: "#normal-item-view"
});
MyCollectionView = Backbone.CollectionView.extend({
emptyView: LoadingMessageView,
itemView: ItemView
});
次に、コードで、まだロードされていないコレクションをビューに渡し、表示してからロードすることができます。
var col = new MyCollection();
var colView = new MyCollectionView({
collection: col
});
App.someRegion.show(colView);
col.fetch();
これにより、コレクションビューがレンダリングおよび表示され、emptyView
最初からの読み込みメッセージが表示されます。コレクションがフェッチを終了すると、「リセット」イベントがトリガーされ、コレクションビューがすべてのアイテムで再レンダリングされます。
于 2012-08-09T13:02:50.577 に答える
0
これと同じくらい簡単にできますか?
// code simplified no tested
var MyCollectionView = Backbone.View.extend({
render: function(){
$("#loading").show();
// render stuff
$("#loading").hide();
}
});
何か不足していますか?
于 2012-08-09T10:46:38.037 に答える