CXJS如何在与现有webapp集成时从全局范围启动Apploop?

时间:2018-05-16 08:56:48

标签: cxjs

我有以下问题。 webapp以index.html开头,它是cxjs应用程序的起点。但这是在一个框架(M-Files UX API)中。 Framework调用全局范围内的函数(OnNewDashboard())并注入我的cxjs-app所需的api和数据。所以,我需要在全局范围内启动此函数中的app循环。

我该怎么做?

否则我必须首先进行用户交互才能访问框架的api和数据,这对我不利,因为我想在启动时直接显示框架中的数据。

感谢

1 个答案:

答案 0 :(得分:0)

我实际上还没有找到一个解决方案,有效地混合使用ecmascript 6 text / b abel和5 text / javascript(请参阅原始问题),同时为旧的webapp构建新的前端。但我发现,你可以使用子组件的可见性来等待在全局范围内注入某个对象。因为在可见性为真之前不会执行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>