使用 Electron 和 Angular 进行热重载

Clé*_*uin 6 electron angular

我正在为我的应用程序使用 Angular 和 Electron。我正在寻找一种启用热重载的方法......当我运行我的yarn run electron(脚本:)时"electron": "ng build --base-href ./ && electron .",如果我保存更改,我的应用程序不会重新加载。这是我的 main.js 文件:

const { app, BrowserWindow } = require("electron");
const path = require("path");
const url = require("url");

let win;

function createWindow() {
  win = new BrowserWindow({ width: 800, height: 600 });

  // load the dist folder from Angular
  win.loadURL(
    url.format({
      pathname: path.join(__dirname, `/dist/index.html`),
      protocol: "file:",
      slashes: true
    })
  );

  // The following is optional and will open the DevTools:
  // win.webContents.openDevTools()

  win.on("closed", () => {
    win = null;
  });
}

app.on("ready", createWindow);

// on macOS, closing the window doesn't quit the app
app.on("window-all-closed", () => {
  if (process.platform !== "darwin") {
    app.quit();
  }
});

// initialize the app's main window
app.on("activate", () => {
  if (win === null) {
    createWindow();
  }
});
Run Code Online (Sandbox Code Playgroud)

我试图包含require('electron-reload')(__dirname);在 main.js 文件中,但没有任何改变

Clé*_*uin 8

我发现了这个:https : //github.com/maximegris/angular-electron 这是一个空的项目模板,使用 Electron 和 Angular。执行yarn start允许热重载。它在 README.md 中写得很好!

  • 虽然这值得一看,但对于已经存在的项目直接解决问题没有帮助。 (2认同)