【Electron】桌面应用开发启动时直接打开一个网址或者跳转浏览器打开一个网址
前一篇有写过 Electron 桌面应用开发快速入门到打包Windows应用程序
但是现在需要程序打开的时候直接打开一个链接,在程序的窗口打开或者直接跳转浏览器打开
一、启动时直接打开一个网址
index.js(有些人用的main.js)
// Modules to control application life and create native browser window
const { app, BrowserWindow, Menu } = require('electron')
const path = require('node:path')
const gotTheLock = app.requestSingleInstanceLock()
const createWindow = () => {
// Create the browser window.
const mainWindow = new BrowserWindow({
width: 1000,
height: 800,
title: "测试项目",
icon: path.join(__dirname, 'icon.ico'),
webPreferences: {
webSecurity: false
}
})
//隐藏顶部菜单
Menu.setApplicationMenu(null)
//设置网站url 例如打开 百度 的链接
mainWindow.loadURL("https://www.baidu.com/")
}
// 这段程序将会在 Electron 结束初始化
// 和创建浏览器窗口的时候调用
// 部分 API 在 ready 事件触发后才能使用。
if (!gotTheLock) {
app.quit()
} else {
app.whenReady().then(() => {
createWindow()
app.on('activate', () => {
// 在 macOS 系统内, 如果没有已开启的应用窗口
// 点击托盘图标时通常会重新创建一个新窗口
if (BrowserWindow.getAllWindows().length === 0) createWindow()
})
})
}
// 除了 macOS 外,当所有窗口都被关闭的时候退出程序。 因此, 通常
// 对应用程序和它们的菜单栏来说应该时刻保持激活状态,
// 直到用户使用 Cmd + Q 明确退出
app.on('window-all-closed', () => {
if (process.platform !== 'darwin') app.quit()
})
二、启动时跳转浏览器打开一个网址
index.js
const { shell } = require('electron') // 引入 Electron 的 shell 模块
function openLink(url) {
shell.openExternal(url) // 使用 openExternal 方法打开链接
}
// 调用函数,例如打开 百度 的链接
openLink('https://www.baidu.com/')
如果在打包的时候遇到各种诡异的报错,可以参考以下文章:
【Electron】桌面应用开发electron-builder打包报错问题处理