Javascript Electron需要重新加载页面以显示内容
我是新手,我的目标是在中运行应用程序。Django应用程序已使用编译,并正确放置在我的electron项目结构中 我的问题是,当我启动electron(Javascript Electron需要重新加载页面以显示内容,javascript,node.js,django,electron,Javascript,Node.js,Django,Electron,我是新手,我的目标是在中运行应用程序。Django应用程序已使用编译,并正确放置在我的electron项目结构中 我的问题是,当我启动electron(electron.)时,它的空白窗口会打开。我需要点击刷新以显示正确的内容。我不能让这个工作,这样的网页是重新加载,以显示内容在电子打开。我尝试了reload()和reloadIgnoringCache()选项,但没有帮助 分析我的窗口webContents参数,我可以看到我的窗口最初获得currentIndex:-1,然后手动重新加载curre
electron.
)时,它的空白窗口会打开。我需要点击刷新以显示正确的内容。我不能让这个工作,这样的网页是重新加载,以显示内容在电子打开。我尝试了reload()
和reloadIgnoringCache()
选项,但没有帮助
分析我的窗口webContents
参数,我可以看到我的窗口最初获得currentIndex:-1
,然后手动重新加载currentIndex:0
(不确定是否相关…)
以下是我的main.js
文件的相关部分:
app.on('ready', function() {
log.info('App is ready?!....');
var openWindow = function(mainAddr){
mainWindow = new BrowserWindow({width: 1200, height: 800, backgroundColor: '#eeeeee', show:false});
mainWindow.loadURL(mainAddr);
mainWindow.webContents.on('did-finish-load', function() {
mainWindow.show();
});
mainWindow.webContents.session.clearCache(function() {
console.log("Cache has been cleared.");
});
mainWindow.webContents.reloadIgnoringCache();
mainWindow.webContents.openDevTools();
mainWindow.on('closed', function() {
mainWindow = null;
subpy.kill('SIGINT');
});
};
好的-事实证明问题与django服务器的启动方式有关。。。它需要几秒钟的时间来启动,而此时Electron正试图到达它,但没有成功——因此出现了白色屏幕 引入超时计时器后,如下所示:
setTimeout(function() {
console.log('waiting ....');
mainWindow.loadURL(mainAddr);
},4000);
等待了4秒钟后,问题就“消失了” 好的-原来问题与django服务器的启动方式有关。。。它需要几秒钟的时间来启动,而此时Electron正试图到达它,但没有成功——因此出现了白色屏幕 引入超时计时器后,如下所示:
setTimeout(function() {
console.log('waiting ....');
mainWindow.loadURL(mainAddr);
},4000);
等待了4秒钟后,问题就“消失了” 嗨,你试过“准备好展示”活动吗?嗨@AnatolyStrashkevich-谢谢你的建议。我试了一下,结果窗户根本打不开。。。所以我甚至不能按刷新按钮..嗨,你试过“准备好展示”活动吗?嗨@AnatolyStrashkevich-谢谢你的建议。我试了一下,结果窗户根本打不开。。。所以我甚至不能按刷新按钮。你确定启动服务器总是需要4秒吗?也许更好的办法是设置与服务器的套接字连接,并在服务器加载时设置回调?您确定启动服务器总是需要4秒钟吗?也许更好的办法是设置与服务器的套接字连接,并在服务器加载时设置回调?