美文网首页
Electron基本概念

Electron基本概念

作者: 神农民 | 来源:发表于2017-02-18 23:16 被阅读153次
    <a href="http://electron.atom.io/"> electron-banner

    </a>

    主进程(Main Process)

    package.json中的main指定的脚本是主进程。主进程主要负责:

    • 创建Web页面(BrowserWindow实例)并管理Web页面;
    • 负责进程间通信;
    • 处理系统事件;

    渲染进程(Renderer Process)

    每一个Web页面都运行在各自的进程中,这里的进程就是渲染进程。Electron可以在Web页面中使用Node.js APIs与底层操作系统交互,这一点非常了不起,也是Electron应用于桌面应用开发的主要价值(我可能更关注的是通过Node.js访问操作系统硬件设备的能力)。

    特点:

    • 渲染进程之间是隔离的;
    • 每一个渲染进程只关心自己的Web页面;
    • 在Web页面中不允许调用和本地GUI相关的APIs;
    • 如果Web页面需要执行GUI操作,则必须由渲染进程请求主进程代为执行;

    注意:在通常的浏览器中,Web页面是运行在沙箱环境中,不允许访问本地资源(应该是处于用户数据安全性考虑)。

    进程间通信

    显然,这里的进程间通信包含两种情形:

    应用结构

    一般来说,Electron app的结构是这样的:

    your-app/
    ├── package.json
    ├── main.js
    └── index.html
    

    package.json的格式与Node模块中的格式完全一样(从某种程度上看,Electron app也是一个Node模块,但是只能通过Electron执行,而不是Node执行)。

    main.js则是主进程脚本。index.html就是应用的UI。

    参考链接


    阅读原文 | 作者官网 | 公众号 | Feed | 订阅 | 发私信

    相关文章

      网友评论

          本文标题:Electron基本概念

          本文链接:https://www.haomeiwen.com/subject/lnmdwttx.html