electron --- 构建桌面应用
最近无意间看到了electron和nw的相关信息,感到很惊讶,因为学习前端也有一段时间了,竟然发现js还有这么强大的功能,因为js不仅可以写网页、写webapp、写hybrid,以及前不久出现的小程序,现在甚至已经可以用来写桌面应用了,从github上的star数已经快到50000就可以知道electron是多么火了,所以这里简单了解一下,以后有机会还是可以使用起来。
官网介绍如下:electron使用html、css、js构建跨平台的桌面应用。当前版本是1.6.11,所以还是很新的一个框架,但是就目前的star数而言,可知其发展前景还是很不错的。并且使用electron会比你想象的更加简单,因为如果你会写网站,那么你就可以构建一个桌面app。 Electron是一个使用html、css、js构建原生app的框架。它帮你解决了最困难的部分,所以你只需要关注于应用的核心部分即可。
Electron三大特点:
- 使用web技术更易构建 --- Electron使用chromium以及nodejs,这样就可以使用html、css、js来创建桌面app。
- 开源。
- 跨平台 --- Electron兼容Mac、Windows以及Linux平台,即使用Electron创建的app可以在这三个平台上跑起来。
使用了Electron创建的桌面app
最初使用Electron创建的是 Atom 编辑器,随后又开始被例如微软、脸书等大公司开始使用。

开始
在https://electron-api-demos.githubapp.com/updates/ElectronAPIDemosSetup.exe这个链接中,我们可以下载使用Electron构建的app,这个app里介绍了使用electron的一些主要的功能。 如下所示:
这里可以看到,和chrome浏览器非常类似,因为Electron就是使用chromium的,但是我们是可以通过设置去掉上面的toolBar和右边的滑动栏的,以更加接近原生的app。
https://electron.atom.io/docs/api/ 这里是使用electron所需要的所有的api。
对于Electron我们主要可以使用的功能有:
- 窗口:创建一个窗口、创建无边界窗口、控制窗口状态、控制窗口的获得焦点和失去焦点、在app崩溃时重新加载、在app挂起时重新加载。
- 菜单:自定义的菜单、右键菜单、键盘快捷键设置。
- 原生用户接口:打开文件、浏览器中打开一个链接、使用系统的对话框 --- 错误对话框、提示对话框、保存对话框。
- 通信: 在主进程和渲染进程之间进行通信 --- 包括同步通信和异步通信, 和一个隐藏的窗口通信。
- 系统: 获取app的位置信息、获取app的版本信息、获取系统信息、获取屏幕信息、使用剪切板等。
- 媒体: 打印为PDF、截屏。
官方electron推荐app:https://github.com/electron/electron-quick-start
这个项目中就是最简单的electron构建的桌面应用。
electron --- 构建桌面应用的更多相关文章
- 使用 Electron 构建桌面应用(拖动控制篇)
使用 Electron 构建桌面应用(拖动控制篇) 当窗口被定义了大小,我们也就是在自定义这个窗口,使得它不可拉伸没有框架,让它看起来就像一个真正的声效器浮在桌面上. 现在问题来了 – 要如何移动或者 ...
- AngularJS 和 Electron 构建桌面应用
译]使用 AngularJS 和 Electron 构建桌面应用 原文: Creating Desktop Applications With AngularJS and GitHub Electro ...
- 使用 AngularJS 和 Electron 构建桌面应用
GitHub 的 Electron 框架(以前叫做 Atom Shell)允许你使用 HTML, CSS 和 JavaScript 编写跨平台的桌面应用.它是io.js 运行时的衍生,专注于桌面应用而 ...
- 使用electron构建跨平台Node.js桌面应用
最近,把团队内经常使用的一个基于Node.js制作的小工具给做成了可视化操作的桌面软件,使用的是electron,这里简单分享一下使用electron的一些经验和心得. 一.如何使用electron把 ...
- 使用electron构建跨平台Node.js桌面应用经验分享
by zhangxinxu from http://www.zhangxinxu.com/wordpress/?p=6154 本文可全文转载,但需得到原作者书面许可,同时保留原作者和出处,摘要引流则随 ...
- electron自定义桌面应用的外观
1. 控制应用视窗大小 构建桌面应用时,我们要考虑我们的应用程序需要如何让用户来使用,那么我们需要提供一个视窗,那么该视窗可以最大化展示,也可以最小化展示,当然我们也希望可以全屏运行. 在electr ...
- 使用Electron开发桌面应用
Electron 框架的前身是 Atom Shell,可以让你写使用 JavaScript,HTML 和 CSS 构建跨平台的桌面应用程序.它是基于io.js 和 Chromium 开源项目,并用于在 ...
- Electron构建一个文件浏览器应用(二)
在前一篇文章我们已经学习到了使用Electron来构建我们的文件浏览器了基础东西了,我们之前已经完成了界面功能和显示文件或文件夹的功能了,想看之前文章,请点击这个链接 .现在我们需要在之前的基础上来 ...
- Electron 实战桌面计算器应用
前言 Electron 是一个搭建跨平台桌面应用的框架,仅仅使用 JavaScript.HTML 以及 CSS,即可快速而容易地搭建一个原生应用.这对于想要涉及其他领域的开发者来说是一个非常大的福利. ...
随机推荐
- 深入理解java虚拟机(十四)正确利用 JVM 的方法内联
在IntelliJ IDEA里面Ctrl+Alt+M用来拆分方法.选中一段代码,敲下这个组合,非常简单.Eclipse也用类似的快捷键,使用 Alt+Shift+M.我讨厌长的方法,提起这个下面这个方 ...
- spark介绍3
- mysql查询最近7天的数据,没有数据自动补0
问题描述 查询数据库表中最近7天的记录 select count(*),date(create_time) as date from task where datediff(now(),create_ ...
- java外观模式
外观模式是为了解决类与类之家的依赖关系的,像spring一样,可以将类和类之间的关系配置到配置文件中,而外观模式就是将他们的关系放在一个Facade类中,降低了类类之间的耦合度,该模式中没有涉及到接口 ...
- ubuntu 中安装 Redis
1.下载安装root@21ebdf03a086:/# apt-cache search redisroot@21ebdf03a086:/# apt-get install redis-server a ...
- django media配置
当我们需要向服务器发送图片或视频,需要对这些媒体文件进行保存时,需要指定保存在哪并将保存的路径添加到路由中. 1.设置settings.py MEDIA_URL = '/media/' MEDIA_R ...
- Centos6.9下PXE安装centos 7
一.简介 这篇文章是无kickstart下安装centos7的,本篇大部分内容同我另外一篇文章相似,只是Centos7 中的isolinux.cfg有一些不太一样需要说明一下. https://www ...
- API自动化测试 Soap UI工具介绍
一. 建立测试用例 (一) 基本概念 soapUI 中工程的层次结构 项目名称:位于最上层 (BookStoreTest),项目可以包含多个服务的定义. REST 服务定义:服务其实是对多个 ...
- short s1 = 1; s1 = s1 + 1;有什么错? short s1 = 1; s1 += 1;有什么错?
对于 short s1 = 1; s1 = s1 + 1;由于 s1+1运算时会自动提升表达式的类型,所以结果是 int型,再赋值给 short 类型 s1时, 编译器将报告需要强制转换类型的错误.对 ...
- 2.Bootstrap CSS
Bootstrap CSS 一.Bootstrap CSS概览 移动设备优先 移动设备优先是 Bootstrap 3 的最显著的变化. 在之前的 Bootstrap 版本中(直到 2.x),您需要手动 ...