Tag: 电子

Electron.js如何最小化/closures窗口到系统托盘和从托盘恢复窗口?

我希望Electron.js应用程序能够在系统托盘上运行,并且每当用户想要执行某些操作时,都可以从系统托盘中进行恢复,并将其最小化/closures回系统托盘。 我怎么做? 我已经从文档中看到了tray部分,但是对于实现我想要的却没有多大帮助。 这是我到目前为止在main.js文件 var application = require('app'), BrowserWindow = require('browser-window'), Menu = require('menu'), Tray = require('tray'); application.on('ready', function () { var mainWindow = new BrowserWindow({ width: 650, height: 450, 'min-width': 500, 'min-height': 200, 'accept-first-mouse': true, // 'title-bar-style': 'hidden', icon:'./icon.png' }); mainWindow.loadUrl('file://' + __dirname + '/src/index.html'); mainWindow.on('closed', function () { mainWindow = null; }); mainWindow.setMenu(null); […]

安装电子模块时节点模块版本冲突

我正在尝试制作一个从我的串口读取数据的Electron应用程序( https://electron.atom.io/ )。 我是一般的networking技术新手,我知道一些JavaScript,但我是一个C + +的人。 所以我从github中快速启动,跑了 npm install && npm start 有了这个轻松工作,我试图安装和运行serialport npm install serialport 安装并运行良好的testing文件,我试图把两者结合起来,把require('serialport')放在index.html文件中。 在这里,我得到这个错误: Uncaught Error: The module '/home/user/Documents/Programing/Git/Arduino-mpu6050/electron-quick-start/node_modules/serialport/build/Release/serialport.node' was compiled against a different Node.js version using NODE_MODULE_VERSION 51. This version of Node.js requires NODE_MODULE_VERSION 53. Please try re-compiling or re-installing the module (for instance, using `npm rebuild` or`npm install`). at […]

电子应用程序与数据库

我正在开发一个使用primefaces的电子项目的应用程序,我想有一个轻量级的数据库与该应用程序一起使用。 到目前为止,我没有成功,也很沮丧。 请帮我找一个本地数据库。 我试图用sqlite3没有成功。 我无法build立它。 我使用电子v0.31.0,我认为在内部使用iojs v3.1.0,并导致sqlite3不能编译。

如何使用电子sqlite3模块?

我想开发使用电子的桌面应用程序,该命令使用通过npm安装的sqlite3软件包 npm install –save sqlite3 但在电子浏览器控制台中会出现以下错误 Uncaught Error: Cannot find module 'E:\allcode\eapp\node_modules\sqlite3\lib\binding\node-v45-win32-x64\node_sqlite3.node' 我的开发环境是Windows 8.1 x64节点版本12.7 我的package.json文件如下所示: { "name": "eapp", "version": "1.0.0", "description": "", "main": "index.js", "scripts": { "start": "electron ." }, "author": "", "license": "ISC", "devDependencies": { "electron-prebuilt": "^0.32.1" }, "dependencies": { "angular": "^1.3.5", "sqlite3": "^3.1.0" } } index.js文件 var app = require('app'); var BrowserWindow […]

使用Electron(Atom Shell)时,客户/服务器模型是什么?

我试图围绕Electron (以前的Atom Shell)是如何工作的。 我来自传统的MVC风格的Web应用程序,浏览器通过路由系统调用控制器动作 ,然后控制器从存储(文件系统,数据库…)中提取数据,并呈现一个视图 ,这被发送回浏览器。 有些操作可能会返回JSON,因为它们是通过JavaScript / AJAX调用的,而不是实际浏览到的浏览器。 我想创build,但作为一个跨平台的桌面应用程序。 我知道Atom Shell结合了一个Chromium浏览器和一个Node.js / v8运行时,但我不确定他们将如何进行通信。 我想我可以在Web服务器上运行一个完整的服务器(基本上是一些像Express一样的Node.js HTTP中间件),但是这会创build一个networking可达的服务器(这也可能使防火墙发生故障) – 我想制作桌面的原因之一应用程序正是为了避免运行真正的服务器。 基本上像“普通”桌面应用程序中的MVP / MVVM模式。 有人能给我几个我想要做的事情的起点吗? 浏览器如何与节点运行时(“客户端”,因为他们称之为)通话?告诉它“嘿,获取我的logging与ID 12345”,并将客户端返回呈现的HTML,或浏览器只是得到一个blob的JSON回来,并通过JavaScript模板引擎呈现?