【问题标题】:Electron IPC within Angular ControllerAngular 控制器中的电子 IPC
【发布时间】:2023-03-07 10:52:01
【问题描述】:

请稍作建议,是否可以从 Angular 控制器调用 ipc 模块

 var ipc = require('ipc');
 ipc.send('asynchronous-message', 'ping');

我尝试发送ipc消息没有成功。

从 index.html 加载创建 BrowserWindow main.js

ipc.on('asynchronous-message', function(event, arg) {
      console.log(arg);  // prints "ping"
      event.sender.send('asynchronous-reply', 'pong');
    });

读了多篇关于IPC的文章,还是不能用。

【问题讨论】:

    标签: angularjs ipc electron


    【解决方案1】:

    开发者错误,我在一个函数块中有事件监听器,所以它永远不会被调用。

    ipc.on('asynchronous-message', function(event, arg) {
          console.log(arg);  // prints "ping"
          event.sender.send('asynchronous-reply', 'pong');
        });
    

    ipc 与 Angular 无缝协作

    【讨论】:

    • 你能在控制器内发送事件和创建事件监听器吗?在我的例子中,事件监听器永远不会被 main 的响应调用。
    • 我找到了解决办法!这是一个可以通过 $timeout 解决的范围问题: ipc.on('channel', function(event, data) { $timeout(function () { // 在此处分配 Angular 范围内的数据 }, 0); } );
    猜你喜欢
    • 1970-01-01
    • 2020-10-25
    • 1970-01-01
    • 1970-01-01
    • 2018-12-23
    • 2014-04-21
    • 2012-09-10
    • 2017-03-06
    • 2014-02-18
    相关资源
    最近更新 更多