当前播放: 10 | 与Web开发不同(二):进程间通信
00:00 / 00:00
高清
  • 高清
1.0x
  • 2.0x
  • 1.5x
  • 1.25x
  • 1.0x
  • 0.5x
网页全屏
全屏
00:00
付费课程,可试看
课程目录
第一章:Electron基础篇 (12讲)
01 | 课程介绍
免费
02 | 内容综述:学完这门课程你能得到什么?
免费
03 | Electron介绍:为什么Electron这么火?
免费
04 | 揭秘Electron架构原理:Chromium + Node.js是如何一起工作?
免费
05 | 桌面端技术选型:如何选择合适的桌面端技术?
06 | Electron开发准备:环境搭建及前期准备
07 | 第一个Electron应用:开发一个简单版的番茄钟(上)
08 | 第一个Electron应用:开发一个简单版的番茄钟(下)
09 | 与Web开发不同(一):主进程与渲染进程
10 | 与Web开发不同(二):进程间通信
11 | 与Web开发不同(三):Native能力及原生GUI
12 | 与Web开发不同(四): 释放前端想象力,基于Electron能做什么?
第二章:实战篇 - 远程控制软件 (13讲)
13 | 实战项目综述:整体需求分析
14 | 设计思路:做远程控制有几步?
15 | 项目架构与基础业务:Electron 与 React 框架结合
16 | 主页面基础业务:Real World IPC
17 | 傀儡端实现(一):基于Electron能力捕获桌面视频流
18 | 傀儡端实现(二):如何接收&响应指令?
19 | 傀儡端实现(三):基于WebRTC传输视频流(上)
20 | 傀儡端实现(四):基于WebRTC传输视频流(下)
21 | 信令服务:如何连接两端(上)
22 | 信令服务:如何连接两端(下)
23 | 指令传输实现:如何建立数据传输?
24 | 项目完善与总结(上):App特性
25 | 项目完善与总结(下):原生GUI
第三章:Electron 工程篇 (7讲)
26 | Electron 应用打包:从HTML到安装包
27 | Electron 应用更新(一):软件更新的痛点
28 | Electron 应用更新(二):线上项目如何更新?
29 | Electron 质量监控:桌面端的质量抓手是什么?
30 | 使用原生能力:如何集成C++能力?
31 | Electron 自动化测试:如何编写端到端测试?
32 | Electron体验优化:如何优化白屏问题?
10 | 与Web开发不同(二):进程间通信

10 | 与Web开发不同(二):进程间通信

邓耀龙
美团高级前端工程师
33讲 约300分钟1787
单独订阅¥99
2人成团¥79
本节摘要
登录 后留言

精选留言(4)

  • 元气满满
    从主进程到渲染进程的通讯,看到了代码里的handleIPC 这里是用 setTimeout 设置了500ms的延迟,这是为何?(试了下,如果不放在 setTimeout 里,这里的通信是不成功的,所以这是为了确保win load 的页面就绪是么?)没有事件之类的可以监听win的加载状态么?毕竟不同页面的加载时长不同,用 setTimeout 没法确保页面是真的加载好了的吧?

    作者回复: 嗯嗯,我只是为了方便演示。一般如果主进程想推IPC给渲染进程并且保证可用,还是建议渲染进程主动发起一个初始化成功IPC,之后主进程再发

    2020-01-26
    1
  • 忆民
    老师有一个问题,这种进程间实现的底层技术是什么?是命名管道,websocket还是什么技术?
    如果有个C++或者其他exe,怎么和electron的主进程通信比较好?是否可以直接使用什么方法直接和ipcMain进行通信?

    作者回复: 底层的IPC怎么实现的我还没仔细看过。但是两个应用间通信的话,用protocol,或者大家都起一个端口,应该是比较可行的操作。

    2020-02-14
  • 瑞泉
    老师,setTimeout(handleIPC, 500),我在renderer.js中无法获取ipc;我按照网上的改成如下:
    win.webContents.on('did-finish-load', function() {
          win.webContents.send('do1', 'abc')
     })
    renderer.js就可以接收到了,是什么原因?我后来把setTimeout给成5000也可以了,难道是因为我的页面没有加载成功?

    作者回复: 嗯嗯,页面没加载,ipcRender注册好监听。

    2020-01-29
  • 瑞泉
    老师有空把远程控制软件的代码上传到github上,另外我建议老师能把视频的字幕整理成文档,你说的(字幕)比现在的PDF详细多了,便于我们学习。另外还有个问题,我在win上运行electron为啥默认有菜单栏,怎么去掉呀?

    作者回复: 代码会随着课程更新上传的,不然理解会比较难。字幕文档我跟策划反馈一下。

    2020-01-28
收起评论
看过的人还看
TypeScript开发实战

梁宵  搜狗营销事业部高级架构师

47讲 | 3364 人已学习

拼团 ¥99 原价 ¥129
Node.js开发实战

杨浩  腾讯高级工程师

57讲 | 4397 人已学习

拼团 ¥99 原价 ¥129
JavaScript核心原理解析

周爱民  《JavaScript语言精髓与编程实践》作者,南潮科技(Ruff)首席架构师

28讲 | 4055 人已学习

拼团 ¥55 原价 ¥68
前端全链路性能优化实战

刘威  前端架构师

60讲 | 2001 人已学习

拼团 ¥99 原价 ¥129