我有这个布局 View :
var appLayoutView = Backbone.Marionette.LayoutView.extend({
template: function() {
return "some template string";
},
regions: {
notify: "[data-region='Notify']"
},
onShow: function() {
this.regions.notify.show(new notifyView());
}
});
我这样称呼:
mainLayout.app.show(appLayout);
所以理想情况下,我希望当我运行上面的行时(本质上是当布局 View 放入 DOM 时),notifyView
被渲染到“notify”区域。然而 this.regions.notify 只是一个字符串。我怎样才能实现我在这里想做的事情?基本上在布局 View 类中具有“通知”的渲染逻辑,并且不受调用行控制。
最佳答案
我找不到任何文档显示添加此内容的位置,但 LayoutView
应该有一个 getRegion
方法:
https://github.com/marionettejs/backbone.marionette/blob/master/src/marionette.layoutview.js#L74
所以你的代码看起来像:
var appLayoutView = Backbone.Marionette.LayoutView.extend({
template: function() {
return "some template string";
},
regions: {
notify: "[data-region='Notify']"
},
onShow: function() {
this.getRegion('notify').show(new notifyView());
}
});
关于javascript - 在 Marionette LayoutView 区域调用 `show`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26715850/