【问题标题】:"loadURL" electron-Angular project only once Angular Compiler is ready仅在 Angular 编译器准备好后“loadURL”电子 Angular 项目
【发布时间】:2018-11-02 18:25:57
【问题描述】:

在许多 electron-Angular 教程中,您创建窗口并在超时后从 localhost 加载 index.html。通常,您会找到如下文本:

// 设置超时以在 Angular 之前渲染窗口 // 编译器已准备好显示项目

现在我认为必须有一种方法,不仅可以任意等待十秒钟,还可以针对某种事件采取行动。

不幸的是,即使本地主机还无法访问,loadURL 也会返回“true”,因此当实际上还没有准备好显示时,也会调用 win.once('ready-to-show')。

理想情况下,我希望在 Angular 编译器准备好之前有一个加载屏幕。有任何想法吗?谢谢!

【问题讨论】:

    标签: angular electron


    【解决方案1】:

    由于我想不出替代方案,我实施了这个解决方案:

    checkForLoad = setInterval(function () {
                    if (!didLoad) {
                        win.webContents.reload();
                    }
                    else {
                        clearInterval(checkForLoad);
                        win.show();
                    }
                }, 2000);
    

    我每隔几秒就重新加载一次页面。在 Angular 中,一旦 Angular 应用程序实际运行,我只需发送 IPC 消息以将“didLoad”更改为 true。效果很好,但显然最好有一个事件来采取行动。与此同时,它已经足够接近了。

    【讨论】:

      猜你喜欢
      • 2017-12-27
      • 1970-01-01
      • 1970-01-01
      • 2018-02-14
      • 1970-01-01
      • 2019-08-02
      • 1970-01-01
      • 2019-10-18
      • 2017-06-12
      相关资源
      最近更新 更多