我有附加到APP的区域。
iApp.addRegions({
sregion : "#sregion"
});
此区域附加到布局,基本上是应用布局,其中包含区域
var iLayout = Marioneete.Layout.extend({
template : LayoutTemplate,
regions : {
mainheader : "#mainheader",
menu : "#mainmenu",
content : "#mcontent"
}
最后一个区域(内容)再次布局
template : MainContentLayout,
regions : {
contentmainheader : "#headmain",
cotenttable : "#tablecontainer",
cotentdetailer : "#issuedetailer"
}
});
我通过主页面事件将this.applayout存储在控制器中,以便我可以访问其他事件发生时的视图,如下所示。
var MyApp = require('mapp');
mlayout = new AppLayout();
MyApp.sregion.show(mlayout);
this.applayout = mlayout;
在所选项目的同一控制器中,我正在尝试访问下面的其他“内容细则”,但这不起作用。
this.applayout.content.cotentdetailer.show(new SelectedIssue({id:options}));
我们如何真正从主要区域/布局访问嵌套视图?我没有看到任何方法吗?
答案 0 :(得分:0)
您需要先创建每个布局并将它们放在正确的区域中:
//same as above, but I used correct parent layout
var MyApp = require('mapp');
this.ilayout = new iLayout();
MyApp.sregion.show(this.ilayout);
//You didnt include all your source code for this layout so I am guessing on the variable name.
this.mLayout = new mLayout();
this.ilayout.content.show(this.mLayout)
//now you can access contentdetailer
this.mLayout.contentdetailer.show(new SelectedIssue({id:options}))
答案 1 :(得分:0)
问题基本上是访问另一个地区的布局区域。做了一些研究,发现需要访问currenView然后区域。我在想那个方向。无论如何,它解决如下。
this.applayout.content.currentView.cotentdetailer.show(new SelectedIssue({id:id}));