最近无意间看到了electron和nw的相关信息,感到很惊讶,因为学习前端也有一段时间了,竟然发现js还有这么强大的功能,因为js不仅可以写网页、写webapp、写hybrid,以及前不久出现的小程序,现在甚至已经可以用来写桌面应用了,从github上的star数已经快到50000就可以知道electron是多么火了,所以这里简单了解一下,以后有机会还是可以使用起来。

  electron官网

  github

  必看文章

  官网介绍如下: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 --- 构建桌面应用的更多相关文章

  1. 使用 Electron 构建桌面应用(拖动控制篇)

    使用 Electron 构建桌面应用(拖动控制篇) 当窗口被定义了大小,我们也就是在自定义这个窗口,使得它不可拉伸没有框架,让它看起来就像一个真正的声效器浮在桌面上. 现在问题来了 – 要如何移动或者 ...

  2. AngularJS 和 Electron 构建桌面应用

    译]使用 AngularJS 和 Electron 构建桌面应用 原文: Creating Desktop Applications With AngularJS and GitHub Electro ...

  3. 使用 AngularJS 和 Electron 构建桌面应用

    GitHub 的 Electron 框架(以前叫做 Atom Shell)允许你使用 HTML, CSS 和 JavaScript 编写跨平台的桌面应用.它是io.js 运行时的衍生,专注于桌面应用而 ...

  4. 使用electron构建跨平台Node.js桌面应用

    最近,把团队内经常使用的一个基于Node.js制作的小工具给做成了可视化操作的桌面软件,使用的是electron,这里简单分享一下使用electron的一些经验和心得. 一.如何使用electron把 ...

  5. 使用electron构建跨平台Node.js桌面应用经验分享

    by zhangxinxu from http://www.zhangxinxu.com/wordpress/?p=6154 本文可全文转载,但需得到原作者书面许可,同时保留原作者和出处,摘要引流则随 ...

  6. electron自定义桌面应用的外观

    1. 控制应用视窗大小 构建桌面应用时,我们要考虑我们的应用程序需要如何让用户来使用,那么我们需要提供一个视窗,那么该视窗可以最大化展示,也可以最小化展示,当然我们也希望可以全屏运行. 在electr ...

  7. 使用Electron开发桌面应用

    Electron 框架的前身是 Atom Shell,可以让你写使用 JavaScript,HTML 和 CSS 构建跨平台的桌面应用程序.它是基于io.js 和 Chromium 开源项目,并用于在 ...

  8. Electron构建一个文件浏览器应用(二)

    在前一篇文章我们已经学习到了使用Electron来构建我们的文件浏览器了基础东西了,我们之前已经完成了界面功能和显示文件或文件夹的功能了,想看之前文章,请点击这个链接  .现在我们需要在之前的基础上来 ...

  9. Electron 实战桌面计算器应用

    前言 Electron 是一个搭建跨平台桌面应用的框架,仅仅使用 JavaScript.HTML 以及 CSS,即可快速而容易地搭建一个原生应用.这对于想要涉及其他领域的开发者来说是一个非常大的福利. ...

随机推荐

  1. 编写高质量代码改善C#程序的157个建议——建议142:总是提供有意义的命名

    建议142:总是提供有意义的命名 除非有特殊原型,否则永远不要为自己的代码提供无意义的命名. 害怕需要过长的命名才能提供足够的意义?不要怕,其实我们更介意的是在代码的时候出现一个iTemp. int ...

  2. Eclipse的Debug调试技巧大全

    转载 原文链接:https://blog.csdn.net/u011781521/article/details/55000066 收藏方便以后查看. 19:18:10 2018-12-29

  3. nodejs版本升级

    网上都说   npm install –g n 可是一直不行,换做 npm install -g cnpm --registry=https://registry.npm.taobao.org ok

  4. Linux Qt 5.x 环境搭建

    Step 1 从Qt官网下载 qt-opensource-linux-x64...run 在linux命令行中给予文件可执行权限 $ chmod u+x qt-opensource-linux...r ...

  5. 【项目总结】扯一扯电商网站前端css的整体架构设计(1)

    最近半忙不忙的写了一个外包网站,网站主要功能是艺术品竞拍和艺术衍生品的销售.工程已经完成了80%左右,现在前后端代码量已经50W行左右,我主要负责的是前端设计和前端布局.下面就先放一个网站的设计图吧, ...

  6. 百万数据测试 Entity Framework 到底有多慢

    测试环境 硬件:阿里云乞丐配置 操作系统:Centos 7 CPU: 1核 内存:1 GB (I/O优化) 网络:1Mbps(峰值) 软件 .net core 2.0 ZKEACMS For .net ...

  7. 小程序:web-view采坑指南

    最近负责开发的[广州医保查询]小程序已经发布上线,其中使用web-view组件完成的[在线绑定社保卡]核心流程,遇到了一些坑,现总结如下: 首先,让我们一起看看什么是web-view ? 小程序api ...

  8. Android理解:Activity状态和生命周期

    http://blog.csdn.net/xiao__gui/article/details/11464603

  9. js计算机样式window.getComputedStyle(ele,null)与

    一.getComputedStyle兼容IE8以上,范户籍的计算样式的值都是绝对值,没有相对单位(如:width:10em; 它打印出来是160px) window.getComputedStyle( ...

  10. linux LVM 磁盘管理

    一.linux LVM 管理及创建步骤 步骤:1.创建pv—2.创建vg—3.将pv加入vg—4.在vg中创建lv—5.将lv分区格式化—6.将lv分区挂载到某个目录使用 1.创建PV [root@z ...