Electron初探
H5开发桌面应用?
没错,H5现在也可以开发跨平台的桌面应用了,这意味着我们可以用网页来设计和制作桌面应用。
基于Node.js的Electron框架就可以实现桌面应用,比较有名的Electron框架实现的桌面应用就是微软的VS Code了,下面给出Electron的官网地址:
创建项目
可以在项目中作为依赖项安装:
npm install electron --save-dev
也可以全局进行安装:
npm install electron -g
快速创建一个项目的方式是直接把官网的示例拉下来即可:
https://github.com/electron/electron-quick-start
安装命令如下:
npm install
启动命令如下:
npm start
然后就可以看到启动界面了。
打包应用
使用npm下载安装electron-packager:
npm install electron-packager -g
安装好后,进入要打包的应用目录执行下面的脚本即可:
D:\electron-quick-start>C:\Users\Administrator\AppData\Roaming\npm\electron-packager . TestApp --out ../electronPublish
- C:\Users\Administrator\AppData\Roaming\npm\electron-packager:是下载后的electron-packager文件所在地址;
- .:表示打包当前目录;
- TestApp:应用名称;
- --out ../electronPublish:输出目录为上级目录electronPublish;
打包后的Windows端程序,目录下的resources\app文件夹就是网页资源存放目录,用于支持运行的其它文件大概有130M。
最后说一下
Electron实际上就是Node.js的操作文件的能力+Chrome内核的渲染能力+v8引擎的速度的一个集合体,额外扩展了系统控件和文件处理的能力。
由于H5项目的特性,实际上,只需要打包出示例的程序之后,就可以通过替换resources\app文件夹下的内容来达到替换应用的功能的目的,另外如果直接将连接指向网上的地址也是可以的,但是要注意,这样会使网络上的JS拥有控制电脑内所有文件的权限,会出现很大的安全风险。
Electron初探的更多相关文章
- electron初探问题总结
使用electron时间不是很久,随着使用的深入慢慢的也遇到一些问题,下面总结一下遇到的问题与大家分享,避免趟坑. 主要问题汇总如下: webview与渲染进程renderer间通信 BrowserW ...
- electron——初探
是什么? Electron是由Github开发,用HTML,CSS和JavaScript来构建跨平台桌面应用程序的一个开源库. Electron通过将Chromium和Node.js合并到同一个运行时 ...
- Windows Electron初探
最近闲来无事,玩玩electron. 1.安装nodejs 下载地址:http://nodejs.cn/download/,下载64位.安装完成后,打开C:\Program Files\nodejs\ ...
- 初探Electron,从入门到实践
本文由葡萄城技术团队于博客园原创并首发 转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. 在开始之前,我想您一定会有这样的困惑:标题里的Electron ...
- 初探Electron
Electron是什么? 官网是这么描述的:Build cross platform desktop apps with JavaScript, HTML, and CSS 翻译一下:使用JavaSc ...
- 2017-12-22 日语编程语言"抚子"-第三版实现初探
前文日语编程语言"抚子" - 第三版特色初探仅对语言的语法进行了初步了解. 之前的语言原型实现尝试(如编程语言试验之Antlr4+JavaScript实现"圈4" ...
- Electron使用与学习--(页面间的通信)
目录结构: index.js是主进程js. const electron = require('electron') const app = electron.app const BrowserWin ...
- Electron使用与学习--(基本使用与菜单操作)
对于electron是个新手,下面纯属个人理解.如有错误,欢迎指出. 一.安装 如果你本地按照github上的 # Install the `electron` command globally ...
- 初探领域驱动设计(2)Repository在DDD中的应用
概述 上一篇我们算是粗略的介绍了一下DDD,我们提到了实体.值类型和领域服务,也稍微讲到了DDD中的分层结构.但这只能算是一个很简单的介绍,并且我们在上篇的末尾还留下了一些问题,其中大家讨论比较多的, ...
随机推荐
- Beautifulsoup关于find的测试
from bs4 import BeautifulSoup import requests url='https://book.douban.com/subject_search?search_tex ...
- 最近在搞gitlab发现2个不错的开发流程分享一下
一个不错的gitlab开发流程 http://blog.51cto.com/sgk2011/1925922 不错的git开发流程 https://www.cnblogs.com/coderzl/p/7 ...
- BZOJ.4888.[TJOI2017]异或和(树状数组)
BZOJ 洛谷 \(Description\) 求所有区间和的异或和. \(n\leq 10^5,\ \sum a_i\leq 10^6\). \(Solution\) 这样的题还是要先考虑按位做. ...
- Python应用【PDF处理-pypdf2】
概述 Python处理PDF文件需要安装相应的库:[PyPDF2]库 使用场景 工作中可能会涉及处理pdf文件,PyPDF2就是这样一个库, 使用它可以轻松的处理 pdf 文件,它提供了读.写.分割. ...
- java中打开文件流后要关闭后重新打开
记录错误,打开文件流一定要关闭并重新打开文件流,不然取的文件内容永远是第一次取的文件内容: /** * 读取配置文件 */ private Properties readProperties() { ...
- BUG——Celery ValueError: not enough values to unpack
背景 最近因项目需要,学习任务队列Celery的用法,跟着官网写Demo,出现如题错误,最终在github的Issues里找到解决办法,记录如下. 场景还原 本地环境如下: Windows 7 Pyt ...
- Android中,如何提升Layout的性能?
Layout 是 Android 应用中直接影响用户体验的关键部分.如果实现的不好,你的 Layout 会导致程序非常占用内存并且 UI 运行缓慢.Android SDK 带有帮助你找到 Layout ...
- 潭州课堂25班:Ph201805201 django 项目 第三十四课 后台文章标签更新功能 ,创建功能实现(课堂笔记)
g更改标签:,前台要向后台传来 id, name, 对标签进行校验:标签不能为空,标签是否已经存在, 流程: def put(self, request, tag_id): ''' 更改标签 :par ...
- React-Native-Storage使用介绍
react-native-storage 这是一个本地持久存储的封装,可以同时支持react-native(AsyncStorage)和浏览器(localStorage).ES6语法,promise异 ...
- 如何使用单例模式返回一个安全的Connection
import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; public clas ...