Существуют ли инструменты для живой перезагрузки электронного приложения при изменении кода, аналогичные browser-sync для web?
Всякий раз, когда мы меняем код приложения electron, я завершаю существующий запущенный процесс и перезапускаю его с помощью electron .. Есть ли инструменты для автоматической перезагрузки приложения electron при изменении кода.
В этом случае вам следует обратить внимание на средства разработки для управления процессами NodeJS. Мой личный фаворит - nodemon, потому что вы можете либо использовать конфигурационный файл, либо передать что-то вроде этого:
nodemon --watch * --exec "electron ."
И он будет работать просто отлично. Но опять же, это мое мнение, выбирайте из списка то, что подходит именно вам.
Лучший инструмент (и самый простой), который я'нашел, это electron-reload:
// main.js
const electron = require('electron');
const { app, BrowserWindow } = electron;
const path = require('path');
// the first argument can be: a file, directory or glob pattern
require('electron-reload')(__dirname + '/app/index.html', {
electron: path.join(__dirname, 'node_modules', '.bin', 'electron')
});
let mainWindow;
app.on('ready', () => {
mainWindow = new BrowserWindow({
// ...
});
mainWindow.setMenu(null);
mainWindow.loadURL(`file://${__dirname}/app/index.html`);
process.env.NODE_ENV !== 'production' && mainWindow.openDevTools();
});