通过远程Web应用程序在电子中打开标准链接



我琐碎的第一个电子应用程序只是嵌入远程WebApp:

mainWindow.loadURL("http://<my-remote-web-app")

Web应用程序正在运行标准JS和jQuery。从浏览器运行并单击"帮助"链接时,它将打开另一个页面上的新窗口。现在,从电子DEKTOP应用程序运行时,我需要具有相同的行为,但是我没有运气。我无法在Web应用程序中运行shell命令,因为它是标准的,并且不加载电子。

我找到了解决方案。在此处发布任何其他人的需求。

在预上脚本中设置全局函数只是问题,以便Web应用程序可以访问它。在主电子脚本(main.js或index.js)中:

function createWindow () {
  // Create the browser window.
  mainWindow = new BrowserWindow({
    width: 800, 
    height: 600,
    webPreferences: {
        nodeIntegration: false,
        preload: path.join(__dirname, 'preload.js')
    }
  })

创建带有此内容的PRELOAD.JS脚本:

const {shell} = require('electron')
var _process = process;
process.once('loaded', function() {
  global.goto_Link = function(linkurl){
        shell.openExternal(linkurl)
  }
});

您现在可以调用全局函数:

//
goto_Link("https://www.google.com");
//

最新更新