使用系统默认浏览器打开超链接
在Electron
开发中,如果使用<a href>
标签打开超链接,默认会使用Electron
内置的BrowserWindow
打开一个新的窗口,而不是使用系统默认的浏览器打开。
如果需要使用系统默认的浏览器打开超链接,可以使用shell
模块的openExternal
方法。
1. 使用默认浏览器打开链接
js
const { shell } = require('electron')
shell.openExternal('https://www.baidu.com')
2. 使用默认浏览器打开本地文件
js
const { shell } = require('electron')
shell.openPath('/Users/xxx/Desktop/xxx.pdf')
3. 全局拦截超链接
js
const win = new BrowserWindow({
// 省略配置项
})
win.webContents.setWindowOpenHandler(details => {
shell.openExternal(details.url)
return { action: 'deny' }
})