我有以下问题。webapp从index.html开始,这是cxjs应用程序的起点。但这是在一个框架内()。框架调用全局作用域中的函数(OnNewDashboard()),并注入我的cxjs所需的api和数据。所以,我需要在全局范围内启动这个函数中的app循环。
我该怎么做?
否则,我必须先进行用户交互才能访问api和框架的数据,这对我不利,因为我希望在启动时直接显示来自框架的数据。
谢谢
发布于 2018-05-17 14:56:58
实际上,我还没有找到一个解决方案,在为一个旧的yet应用程序构建一个新的前端时,可以有效地混合ecmascript 6文本/b abel和5 text/javascript (参见原始问题)。但我发现的是,您可以使用子组件的可见性来等待某个对象被注入全局范围。由于在可见性为真之前不会执行Controller中的onInit,所以这是一个解决办法。马可你有更好的方法吗?示例:
export class myController extends Controller
{
onInit(){
waitforData();
function waitforData() {
if (myGlobalExternalDataObject != undefined)
{
dashboardStore.set("$SpecialComponent.visible", true);
dashboardStore.set("$load.visible", false);
return;
}
setTimeout(function () {
waitforData();
}, 200);
}
}
}
export default <cx>
<SpecialComponent/>
<h2 putInto="header" visible={{bind: "$load.visible", defaultValue: true}} >
Loading... please wait.
</h2>
<Section visible={{bind: "$load.visible", defaultValue: true}} mod="well" controller={myController}>
<p ws >
Loading... please wait.
</p>
</Section>
</cx>https://stackoverflow.com/questions/50366454
复制相似问题