我是这个世界的新手,我需要了解Backbone和Marionette的一些概念.在这里,我试图解释一些我正在学习的概念.对它们进行一些反馈会很棒.
该render函数定义了呈现模板的逻辑.完成后,将onRender调用回调.这里我假设渲染的视图没有附加到DOM.它由一个tagName(默认值div)组成,其中包含我附加到它的模板.要将该标记显式插入DOM,我需要将其附加到某处.我错了吗?
一般来说,我会做以下事情.
var view = new MyView();
view.render();
$("container").append(view.$el);?
Run Code Online (Sandbox Code Playgroud)
Marionette使用区域概念扩展了Backbone.show可以在区域上调用该方法以呈现特定视图.
var view = new MyView();
region.show(view);
Run Code Online (Sandbox Code Playgroud)
在这种情况下,该show方法将自己调用该render函数,最后,当视图的内容将被放入DOM中时,将在该视图上调用该函数onShow.好吗?
从Marionette doc开始,还有一个叫做回调的回调onDomRefresh.从我的实验中,我注意到之前调用过此方法onShow.所以,我的假设是视图尚未附加到DOM.但该文件说明如下.
在渲染视图后触发,已经通过Marionette.Region显示在DOM中,并且已经重新渲染.
你能给它一些提示吗?
提前致谢.