квен сказал это
const { app, BrowserWindow } = require('electron');
let mainWindow;
function createWindow() {
mainWindow = new BrowserWindow({
width: 800,
height: 600,
webPreferences: {
nodeIntegration: true,
},
});
mainWindow.loadURL('http://localhost:3000'); // Загрузите вашу главную страницу
mainWindow.on('closed', () => {
mainWindow = null;
});
}
// Обработка глубоких ссылок
app.on('second-instance', (event, commandLine, workingDirectory) => {
if (mainWindow) {
if (mainWindow.isMinimized()) mainWindow.restore();
mainWindow.focus();
// Получение параметров из командной строки
const url = commandLine.slice(1).find(arg => arg.startsWith('myapp://'));
if (url) {
mainWindow.webContents.send('deeplink', url); // Отправляем URL в render процесс
}
}
});
// Регистрация протокола myapp://
if (require('electron-squirrel-startup')) return;
app.whenReady().then(() => {
createWindow();
// Регистрация протокола myapp://
app.setAsDefaultProtocolClient('myapp');
});
app.on('window-all-closed', () => {
if (process.platform !== 'darwin') {
app.quit();
}
});
app.on('activate', () => {
if (BrowserWindow.getAllWindows().length === 0) {
createWindow();
}
});