只有在Angular编译器准备好之后,才可以“ loadURL”电子-Angular项目

时间:2018-10-23 12:56:44

标签: angular electron

在许多电子角度教程中,您创建窗口并在超时后从localhost加载index.html。通常,您会找到以下文本:

//设置超时以直到直到Angular才渲染窗口 //编译器已准备好显示项目

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

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

理想情况下,我想拥有一个加载屏幕,直到Angular Compiler准备就绪为止。有任何想法吗?谢谢!

1 个答案:

答案 0 :(得分:0)

由于我无法提出替代方案,因此我实施了此解决方案:

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

我每隔几秒钟重新加载一次页面。在Angular中,我只发送和IPC消息即可在Angular App实际运行后将“ didLoad”更改为true。效果很好,但是显然最好有一个事件可以执行。同时,它已经足够近了。