rxjs - 在响应时从 Electron ipcMain 创建可观察的 RxJS
问题描述
使用 sendSync 创建 observable 很容易。我想使用 ipcMain 创建一个 observable 。在不使用简单回调的情况下打开。
return of(this.electronService.ipcRenderer.sendSync(channel.IPCMAIN_REQUEST_DATA));
类似的东西,但不起作用。
return this.electronService.ipcRenderer.on(channel.IPCMAIN_RESPONSE_DATA, (event , response) => {
return of(response);
});
解决方案
试试这个
return (new Observable(subscriber=>{
this.electronService.ipcRenderer.on(channel.IPCMAIN_RESPONSE_DATA, (event , response) => {
subscriber.next(response)
});
}));
如果事件被触发,那么 observable 将发出一个新值
推荐阅读
- android - 如何验证成功添加的 aar 文件?
- angular - 为什么 Ngrx 选择器在没有订阅的情况下触发?
- performance - 使用带有 Dynatrace 的 JMeter 的 UbikLoadPack 监控插件时未发送客户标头
- xslt - WSO2 EI 和 XSLT 中介
- java - 为什么 JAXB 中的 XmlAdapter 是抽象类?
- azure-data-factory - 需要使用 Azure 数据工厂活动读取 CSV 文件
- c# - 更新列表项多个查找值字段 Microsoft Graph
- gatsby - 为什么 'npm run develop' 工作,而 'gatsby develop' 抛出错误?
- python - 在 python pandas 数据框中分配循环以提高性能
- jasper-reports - 在通过 Jrxml 模板生成的 Pdf 中获取空格而不是文本