electron 的混合桌面之路 入门安装
最近有计划去写桌面程序,所以呢,我打算写一篇博客来记录使用21世纪逼格最高的技术的入门文档。
electron 的混合桌面之路
首先假装很厉害的样子介绍一下Github 官方制作的Atom代码编辑器,这个编辑器是使用electron技术开发的号称21世纪最富有变化的可扩展的编辑器(A hackable text editor for the 21st Century)。
- 界面简单直观,代码高亮,智能提示补全的功能都还算强大贴心
- 它可拥有灰常多的插件,插件的编写也十分便利,javascript就可以为其写插件
- 最重要的是它让无数人看到了HTML/CSS/JS桌面程序的未来
electron 究竟是个啥?
一句话:这是个在node.js平台上运行的为了一些专门的功能而制作的浏览器
node.js: 一个编程专用的浏览器环境,可写javascript
electron: 打包了一个特制的chrome浏览器和node.js ,然后我们加载网页就行了,嚯嚯哒
那么,怎么使用这个electron,牛的很的技术呢
主要有以下几个步骤:
- 下载并安装node.js
- 检查node.js和npm是否安装成功(npm就是node.js 的一个商店,专门提供各种小功能【各种模块】)
- 下载electron,注意:在线安装不行的话请出门右转选择离线安装
- 安装electron或者直接使用
- 编写第一个应用
1.下载并安装node.js
node.js官网:https://nodejs.org/en/ 建议下载 4.x的版本,这个版本已经实现对ES6不错的支持了
2.检查node.js和npm是否安装成功
- 命令行:node -v
- 命令行: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
- 命令行:electron .\ (你编写的应用的那个文件夹下执行)
- 离线安装的同学,请戳开electron.exe 把那个文件夹甩进去
5.编写第一个应用
- 随便弄个文件夹,新建一个文件:package.json
打开package.json,写入如下内容
{"name": "你弄啥","version": "0.0.1","main": "main.js" }
JSON格式
- name -> 你的应用名字
- version -> 版本号
- main: ->程序的主逻辑文件,node.js的写法
编写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 的混合桌面之路 入门安装相关推荐
- Electron 快速开始(一)-入门基础、使用 JavaScript,HTML 和 CSS 构建跨平台的桌面应用程序
文章目录 Electron 快速开始(一)-入门基础.使用 JavaScript,HTML 和 CSS 构建跨平台的桌面应用程序 Electron简介 多进程模型 Electron 快速开始 管理窗 ...
- js桌面应用 Linux,从 1 到完美,用 js 和 electron 写一个桌面应用
从 1 到完美,用 js 和 electron 写一个桌面应用 目前用 js 和前端技术写桌面软件的方案主要有两种:electron 和 nw.js.这两者在底层实现上有所不同,简单的说,electr ...
- Electron系列教程——第一篇:入门
Electron系列教程--第一篇:入门 一.楔子 想要学习Electron,跟着官网或者中文网,仔细阅读,并实践,其实是够了,不必要重复.那为什么还要写这个系列呢?大概有两方面原因,其一:我使用el ...
- 使用Electron打造跨平台桌面应用
https://uinika.github.io/web/server/electron.html 早期桌面应用的开发主要借助原生 C/C++ API 进行,由于需要反复经历编译过程,且无法分离界面 ...
- 【国庆弯道超车系列】NoSQL基础及MongoDB入门安装
在互联网快速发展的今天,数据种类和格式越来越多样化,传统的关系型数据库已经难以适应,在此种情况下No SQL应运而生,本文主要讲解NoSQL的基础知识,及MongoDB的入门安装,仅供学习分享使用,如 ...
- Windows 7 Embedded快速入门-安装
PS: 通过以下步骤,在VMware中安装成功.安装包en_windows_embedded_standard_7_runtime_x86.iso 文章来源:http://sns.ca800.com/ ...
- Electron开发跨平台桌面应用
虽然 B/S 是目前开发的主流,但是 C/S 仍然有很大的市场需求.受限于浏览器的沙盒限制,网页应用无法满足某些场景下的使用需求,而桌面应用可以读写本地文件.调用更多系统资源,再加上 Web 开发的低 ...
- Redis 入门安装(Linux)
Redis 入门安装(Linux) 备注:该案例讲解基于CentOS6.5.Reids3.2.8 Redis 官网 中文地址:http://www.redis.cn/ 英文地址:https://red ...
- OpenDesktop 1.0开放桌面操作系统光盘启动安装过程详细图解
OpenDesktop 1.0开放桌面操作系统光盘启动安装过程详细图解 前提∶你的光盘能直接启动,推荐使用光盘启动安装,刻录光盘要特别注意,使用支持64个字母长文件名的刻录软件. 一.准备工作: ...
最新文章
- 表达式必须是可修改的左值怎么解决_如何解决代码腐败的味道
- python中创建列表[]和list()哪个效率快?为什么快?快多少呢?
- 我把面试官问的没话说了,这样好吗?
- Leetcode1711. 大餐计数[C++题解]:哈希表和枚举
- 腾讯阿里都在用!机器学习最热研究方向入门,附学习路线图
- LuoguP1113 杂务
- java 上传文件到服务器_java上传文件到OSS云服务器(二)
- 前沿 | IBM语音识别已接近人类水平
- ASP.NET Core真实管道详解[1]:中间件是个什么东西?
- linux安装工具的过程
- 《显微镜下的大明》马伯庸2019年1月新书mobi、epub、PDF资源共享
- 关于人工智能不会使大脑变懒惰的议论文_模拟人类大脑 :人工智能的救赎之路 ?...
- 无涂层无胶纸(UWF)的全球与中国市场2022-2028年:技术、参与者、趋势、市场规模及占有率研究报告
- 买股不如买基?Python实现快速追踪基金的收益情况!谁还不是个买基高手?
- 数据结构--括号匹配检验(数据结构习题)
- echarts中月份数据缺少怎么补齐呢?
- 基于Python实现的学生信息管理系统
- RCNN到faster RCNN 简介
- Shell编程之第二讲——shell 的变量
- 域控服务器的dns配置,如何配置额外域控制器上的DNS?