【问题标题】:OracleJet- How to know when a view is ready?OracleJet-如何知道视图何时准备就绪?
【发布时间】:2023-03-11 07:30:01
【问题描述】:

无论如何要知道视图是否已准备好/完成渲染?由于 oraclejet 使用 Knockout 进行数据绑定,这是否属于 Knockout 部分?

我的用例是:

  • 加载网站。路由器指向“A”视图,该视图通过“ojModule”命名空间使用“A.js” 作为模特
  • 我想在“A”视图完全呈现后运行一些代码。

【问题讨论】:

    标签: knockout.js oracle-jet


    【解决方案1】:

    您可以使用 BusyContext,也可以考虑使用模板绑定,link,并使用 afterRender 回调。

    【讨论】:

      【解决方案2】:

      您可以为此使用busycontext,如下面的函数所示。更多内容可以参考BusyContext

      function refreshBusyContext() {
        self.pageBusyContext = oj.Context.getPageContext().getBusyContext();
        self.pageBusyContext.whenReady().then(function () {
          console.log('page load is done');
        });
      }
      

      我认为你也可以使用像handleBindingsApplied() 这样的生命周期方法,如下所示

      self.handleBindingsApplied = function(info) {
       // Executes after all the bindings applied and all jet components are ready in view
      };
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2012-07-31
        • 2019-09-01
        • 1970-01-01
        • 1970-01-01
        • 2015-11-07
        • 1970-01-01
        • 2018-03-11
        相关资源
        最近更新 更多