javascript – 如何将Electron ipcRenderer整合到基于TypeScript的Angular 2应用程序?

前端之家收集整理的这篇文章主要介绍了javascript – 如何将Electron ipcRenderer整合到基于TypeScript的Angular 2应用程序?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想在我的项目中使用 ipcMain/ ipcRenderer来从角度到电子和后面的沟通.

电子方面很清楚:

  1. const
  2. electron = require('electron'),ipcMain = electron.ipcMain,;
  3.  
  4. ipcMain.on('asynchronous-message',function(event,arg) {
  5. console.debug('ipc.async',arg);
  6. event.sender.send('asynchronous-reply','async-pong');
  7. });
  8.  
  9. ipcMain.on('synchronous-message',arg) {
  10. console.debug('ipc.sync',arg);
  11. event.returnValue = 'sync-pong';
  12. });

但我不知道如何将该电子模块整合到我的Angular 2应用程序中.我使用SystemJS作为模块加载器,但我是一个菜鸟.

任何帮助赞赏.谢谢.

—马里奥

解决方法

There is conflict,because Electron use commonjs module resolving,but your code already compiled with systemjs rules.

两个解决方

坚固的方式.注册对象需要返回:

  1. <script>
  2. System.set('electron',System.newModule(require('electron')));
  3. </script>

这是最好的,因为renderer / init.js脚本在启动时加载该模块. SystemJS必须只占用它,而不是加载.

替代方式.用声明使用脏话.

获取index.html中的电子实例:

  1. <script>
  2. var electron = require('electron');
  3. </script>

在你的类型文件文件中以这种方式声明它:

  1. declare var electron: any;

自由使用)

  1. electron.ipcRenderer.send(...)

猜你在找的JavaScript相关文章