尝试使用 IpcRenderer 时出现构建错误

问题描述 投票:0回答:1

我正在尝试使用 Angular 18 制作我的第一个 Electron 应用程序。我密切关注了几个教程,但在构建应用程序时我不断收到错误消息。我创建了一个基本服务来处理 IPC 功能,让 Angular UI 与 Electron 功能对话。

import { Injectable } from '@angular/core';
import {IpcRenderer} from 'electron';

@Injectable({
  providedIn: 'root'
})
export class IpcService {
  private ipc: IpcRenderer | undefined;
  constructor() {
    try {
      this.ipc = window.require('electron').ipcRenderer;
    } catch (e) {
      throw e;
    }
  }

  test(): void {
    this.ipc?.send("openModal")
  }
}

this.ipc = window.require('electron').ipcRenderer;
行似乎在构建时导致此错误:“发生未处理的异常:无法解构‘(中间值)’的属性‘路由’,因为它未定义。”

当我删除该行时,应用程序会正常构建和加载,当然 IPC 无法工作。我似乎找不到其他人遇到这个问题,所以我觉得我明显遗漏了一些东西。感谢您的帮助!

angular electron build-error ipcrenderer
1个回答
0
投票

不知道为什么会出现这种情况,但将

window.require
线包裹在

if (typeof window !== 'undefined') {}

修好了。

© www.soinside.com 2019 - 2024. All rights reserved.