我使用的木偶Layout .show来呈现CollectionView,并想知道是否有当检测方式的所有的ItemView孩子都呈现完毕?
我的代码的简化版本是:
布局
Layouts.Group = Backbone.Marionette.Layout.extend({
template: Templates.group,
...
regions: {
header: ".group-header"
details: ".group-details"
},
...
});
Run Code Online (Sandbox Code Playgroud)
的CollectionView
Views.GroupDetail = Backbone.Marionette.CollectionView.extend({
itemView: groupDetailRow,
...
onRender: function () {
// do something here after rendering *all* groupDetailRows of information for group detail section
}
});
Run Code Online (Sandbox Code Playgroud)
ItemView控件
Views.GroupDetailRow = Backbone.Marionette.ItemView.extend({
onRender: function () {
// single groupDetailRow of information
}
});
Run Code Online (Sandbox Code Playgroud)
.节目
var details = new Views.GroupDetail();
details.show(new DV.Time.Views.GroupDetail());
Run Code Online (Sandbox Code Playgroud)
我在文档中注意到提到了一个.done函数:
new MyCollectionView().render().done(function(){
// all of the children are now rendered. do stuff here.
});
Run Code Online (Sandbox Code Playgroud)
可以用这个Layout吗?
您可以监听“渲染”事件,或在视图上提供“onRender”回调函数。
MyView = Marionette.CollectionView.extend({
onRender: function(){
// the list of items has been rendered. do stuff here
}
});
var view = new MyView();
view.on("render", function(){
// the list of items has been rendered. do stuff here
});
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3659 次 |
| 最近记录: |