开发时同步电子应用程序中的代码更改

Sync code changes in electron app while developing

是否有任何工具可以在代码更改时实时重新加载电子应用程序,类似于 web 的浏览器同步?

每当我们更改电子应用程序的代码时,我都会终止现有的 运行 进程并重新启动 电子. 它们是否有任何工具可以在代码更改时自动重新加载电子应用程序。

在这种情况下,您应该查看 NodeJS process management. My personal favorite is 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();
});

回答晚了一点,希望对大家有帮助。
有一个名为 Electromon 的 npm 模块。

npm i -g electromon [install]

用法是 electron 。\main.js [将 main.js 的名称更改为您的文件,例如 app.js 之类的。 ]

如果直接使用命令“electron .”,

"nodemon": "nodemon --exec electron ."

然后它会给你一个错误

'electron' is not recognized as an internal or external command,
 operable program or batch file.

所以间接使用它,

"start": "electron .",
"start:nodemon": "nodemon --watch main.js --exec npm start",

并使用

重新启动您的应用
npm run start:nodemon