最近有计划去写桌面程序,所以呢,我打算写一篇博客来记录使用21世纪逼格最高的技术的入门文档。

electron 的混合桌面之路

首先假装很厉害的样子介绍一下Github 官方制作的Atom代码编辑器,这个编辑器是使用electron技术开发的号称21世纪最富有变化的可扩展的编辑器(A hackable text editor for the 21st Century)。

  1. 界面简单直观,代码高亮,智能提示补全的功能都还算强大贴心
  2. 它可拥有灰常多的插件,插件的编写也十分便利,javascript就可以为其写插件
  3. 最重要的是它让无数人看到了HTML/CSS/JS桌面程序的未来

electron 究竟是个啥?

一句话:这是个在node.js平台上运行的为了一些专门的功能而制作的浏览器
node.js: 一个编程专用的浏览器环境,可写javascript
electron: 打包了一个特制的chrome浏览器和node.js ,然后我们加载网页就行了,嚯嚯哒

那么,怎么使用这个electron,牛的很的技术呢

主要有以下几个步骤:

  1. 下载并安装node.js
  2. 检查node.js和npm是否安装成功(npm就是node.js 的一个商店,专门提供各种小功能【各种模块】)
  3. 下载electron,注意:在线安装不行的话请出门右转选择离线安装
  4. 安装electron或者直接使用
  5. 编写第一个应用

1.下载并安装node.js

node.js官网:https://nodejs.org/en/ 建议下载 4.x的版本,这个版本已经实现对ES6不错的支持了

2.检查node.js和npm是否安装成功

  1. 命令行:node -v
  2. 命令行:npm -v

3.下载electron

electron官网:http://electron.atom.io/ PS.应该是,我觉得
GitHub 坐标:https://github.com/electron/electron api 官方文档才是解决问题的王道
中文翻译官方文档:https://github.com/electron/electron/tree/master/docs-translations/zh-CN
3. npm 在线下载

 - 命令行:npm install electron -g (加g 全局安装,自动添加到环境变量)- 命令行:cd your-app-path - 命令行:electron .\ (应用跑起来)

4. 离线下载

->到各家镜像网站摸一个electron下来 对应平台摸搞错了,很尴尬的
宝宝镜像:https://npm.taobao.org/mirrors/electron/
GitHub:https://github.com/electron/electron/releases
csdn 下载频道:地址忘了,自己找,我才懒得翻历史记录呢

4.安装electron或者直接使用

如果上面的步骤没有出现错误提示,那么直接使用即可,: D

  1. 命令行:electron .\ (你编写的应用的那个文件夹下执行)
  2. 离线安装的同学,请戳开electron.exe 把那个文件夹甩进去

5.编写第一个应用

  1. 随便弄个文件夹,新建一个文件:package.json
  2. 打开package.json,写入如下内容

    {"name": "你弄啥","version": "0.0.1","main": "main.js"
    }

    JSON格式

    • name -> 你的应用名字
    • version -> 版本号
    • main: ->程序的主逻辑文件,node.js的写法
  3. 编写main.js,写入内容如下

var electron  = require('electron');
//寻求node.js的一个模块 electron ,并生成对象electron
//PS.早期版本的electron用的是app模块和browser-window模块
var {app} = electron;
//{app} 是一个electron对象,控制整个应用,管理所有
var browserWindow = electron.BrowserWindow;
//browserWindow 对象被创造成一个electron的浏览器窗口对象
var mainWindow;//表示主窗口
function createWindow() {mainWindow = new browserWindow({height:600,width:800});//打开一个浏览器窗口,800×600mainWindow.loadURL('file://' + __dirname + '/app.html');//打开当前目录的app.html
}app.on('ready',createWindow);
//{app}订阅了一个ready事件,
//这个事件会在整个应用启动过程完成后发生,此时会自动调用createWindow函数做一些事情了

剩下的事情就是如何编写页面了,看官方文档吧,骚年!
我感觉优化的好的的话,以后Photoshop都可以用electron写!
当然C/C++的功底是必须的,哈哈!
PS. 现在可以用ES6写electron了,兼容性问题不大!
electron 参考工具链:http://electron.atom.io/community/
LOL全新客户端也要用electron(准确的说的是直接编译的CEF)

electron 的混合桌面之路 入门安装相关推荐

  1. Electron 快速开始(一)-入门基础、使用 JavaScript,HTML 和 CSS 构建跨平台的桌面应用程序

    文章目录 Electron 快速开始(一)-入门基础.使用 JavaScript,HTML 和 CSS 构建跨平台的桌面应用程序 Electron简介 多进程模型​ Electron 快速开始 管理窗 ...

  2. js桌面应用 Linux,从 1 到完美,用 js 和 electron 写一个桌面应用

    从 1 到完美,用 js 和 electron 写一个桌面应用 目前用 js 和前端技术写桌面软件的方案主要有两种:electron 和 nw.js.这两者在底层实现上有所不同,简单的说,electr ...

  3. Electron系列教程——第一篇:入门

    Electron系列教程--第一篇:入门 一.楔子 想要学习Electron,跟着官网或者中文网,仔细阅读,并实践,其实是够了,不必要重复.那为什么还要写这个系列呢?大概有两方面原因,其一:我使用el ...

  4. 使用Electron打造跨平台桌面应用

    https://uinika.github.io/web/server/electron.html 早期桌面应用的开发主要借助原生 C/C++ API 进行,由于需要反复经历编译过程,且无法分离界面 ...

  5. 【国庆弯道超车系列】NoSQL基础及MongoDB入门安装

    在互联网快速发展的今天,数据种类和格式越来越多样化,传统的关系型数据库已经难以适应,在此种情况下No SQL应运而生,本文主要讲解NoSQL的基础知识,及MongoDB的入门安装,仅供学习分享使用,如 ...

  6. Windows 7 Embedded快速入门-安装

    PS: 通过以下步骤,在VMware中安装成功.安装包en_windows_embedded_standard_7_runtime_x86.iso 文章来源:http://sns.ca800.com/ ...

  7. Electron开发跨平台桌面应用

    虽然 B/S 是目前开发的主流,但是 C/S 仍然有很大的市场需求.受限于浏览器的沙盒限制,网页应用无法满足某些场景下的使用需求,而桌面应用可以读写本地文件.调用更多系统资源,再加上 Web 开发的低 ...

  8. Redis 入门安装(Linux)

    Redis 入门安装(Linux) 备注:该案例讲解基于CentOS6.5.Reids3.2.8 Redis 官网 中文地址:http://www.redis.cn/ 英文地址:https://red ...

  9. OpenDesktop 1.0开放桌面操作系统光盘启动安装过程详细图解

    OpenDesktop 1.0开放桌面操作系统光盘启动安装过程详细图解 前提∶你的光盘能直接启动,推荐使用光盘启动安装,刻录光盘要特别注意,使用支持64个字母长文件名的刻录软件. 一.准备工作:   ...

最新文章

  1. mac svn的替代品CornerStone
  2. Java中测长函数_Core Java测试题
  3. 基于 RocketMQ 构建阿里云事件驱动引擎EventBridge
  4. 与JodaTime的DateTime和Google Guava的供应商嘲笑
  5. Eigen(8)实例最小二乘法
  6. 全志 a33 linux qt,全志A33 lichee 搭建Qt App开发环境编写helloworld
  7. 华为鸿蒙os和麒麟os区别,麒麟、鸿蒙皆自研,为何华为不像苹果将系统同时推送?...
  8. 游戏筑基开发之测试篇2(C语言)
  9. 26. 面向对象程序设计
  10. DPDK DPVS 笔记 -> 基本框架整理
  11. FANUC数控系统应用中心
  12. 苹果手机Safri浏览器 js 解析问题
  13. 梁宁-产品思维30讲-小米的效率革命
  14. 高中数学必修一,集合知识概念运算归纳总结
  15. Nginx编译安装与虚拟主机配置
  16. MC皮肤站和外置登陆教程
  17. 什么是宝塔面板?宝塔面板的作用和功能是什么?
  18. Vue Devtools不显示Components
  19. python多线程爬斗破苍穹
  20. 请尝试写一个验证Email地址的正则表达式。版本一应该可以验证出类似的Email —— python学习笔记

热门文章

  1. 佛说……人生有八苦……
  2. Golang快速入门上手
  3. 冲击科创板的百万算力威马,Top3稳了?
  4. 陶洋的个人简历——自荐信
  5. layerUI的学习(一)
  6. 安装固态硬盘,小米笔记本13.3
  7. 基频抖动Jitter
  8. $.ajax同步请求
  9. 假如让你来设计数据库中间件
  10. UNITY 3D NGUI 2D动态图片制作