我使用新的AngularCLI生成了一个新的Angular2项目.现在我不想在浏览器中使用Angular,而是在Electron应用程序中使用。因此,我为electron的主进程创建了一个文件,在终端中使用ngbuild构建我的Angular应用程序后,该应用程序没有按预期工作。Electron主进程文件:varelectron=require("electron");var{app,BrowserWindow}=electron;app.on('ready',()=>{varmainWindow=newBrowserWindow();mainWindow.loadURL(`file:
我正在为桌面应用程序使用NodeJS/Electron。我想做的是使用操作系统的默认应用程序打开一个文件,例如使用Word的.docx。到目前为止,我尝试过使用child_process.spawn、.exec或.execFile的方法,但我什么也没得到。这是我的实际代码:varfs=require('fs'),cp=require('child_process');cp.spawn(__dirname+'/test.docx');提前致谢。 最佳答案 使用openItem()Electron的shell模块提供的函数,例如:con
我正在使用Webpack2和Electron在Mac上构建nodejs应用程序。在我的项目根目录中,我有一个目录“data”,我将配置存储在json中,例如data/configurations/files.json(实际上有不同的文件具有动态名称)在webpackaing之后,当我打电话时:fs.readdirSync(remote.app.getAppPath());为了在根目录中获取文件,我只打包了这些文件:["default_app.js","icon.png","index.html","main.js","package.json","renderer.js"]path.j
我希望复制类似于Launchy/Quicksilver/Spotlight的行为。我想要一个始终运行的Electron应用程序。当我按下快捷键时,Electron应用程序会被带到前台并聚焦。我知道globalShortcut模块可用于绑定(bind)快捷方式,但我不知道如何让该快捷方式触发将应用程序带到前台。任何帮助将不胜感激...... 最佳答案 让我们从最简单的情况开始,然后构建我们的解决方案以更好地处理一些边缘情况。最简单的情况是在按下我们注册的全局快捷方式时显示一个已经打开的窗口。constpath=require('pat
我正在创建一个Electron应用程序,我需要在其中扫描和更新需要root权限的文件。我知道我可以使用sudo.exec()以这种方式运行这样的命令:sudo.exec("rm/private/var/log/fsck_hfs.log",options,(e,stdout,stderr)=>{});我什至可以将多个命令放在一个脚本中,并使用单个sudo.exec()来执行它们。就我而言,命令需要在不同的时间点执行,我无法使用单个脚本执行它们。用户一次又一次地授予权限很烦人。我尝试了另一种方式(运行一段代码,其中可以执行需要root权限的所有内容)。为此,我发布了另一个问题here.但似
我正在创建一个用于订票的网络应用程序。唯一的问题是数据库。我不想告诉我的客户安装XAMPP或设置数据库等。有什么方法可以将应用程序与数据库打包在一起吗? 最佳答案 SQLite对于可以随应用程序一起提供的本地数据库,这是一个不错的选择。它不需要用户设置或安装任何额外的依赖项。它当然没有服务器上的完整功能那么全面,但对于本地桌面应用程序来说应该足够好了。 关于javascript-带数据库的Electron应用程序,我们在StackOverflow上找到一个类似的问题:
我正在使用nightmarejs登录一个在本地存储中设置token的站点。但是,我运行用户的任何future测试都已经登录。我猜本地存储没有被清除。有什么办法吗?我在test.js中的代码require('mocha-generators').install();varNightmare=require('nightmare');varexpect=require('chai').expect;describe('testlogin',function(){varnightmare=Nightmare({show:true})after(function*(){yieldnightma
我正在开发一个应用程序,在第一次运行时必须通过API从Web下载文件(图像jpg/png),然后将其存储在本地,这样就不再需要在线连接了(用户可以运行更新在线时,如果有可用的更新,则通过api下载更新的数据。我知道桌面应用程序的工作方式非常不常见,但主要目标是将桌面应用程序数据与网络应用程序同步。到目前为止,我找到了一个npm插件request(link)来检查用户是否连接到互联网。我不确定是否可以在Electron应用程序中下载和存储文件(所以它在应用程序之外是不可见的)?你能推荐必要的插件/工具来实现这个目标吗?我们将不胜感激。 最佳答案
我想知道是否可以从electron启动自定义形状的独立窗口/元素应用程序。类似于我们在Android中为Facebook应用程序提供的聊天头像。我应该从哪里开始?如果不是在electron中,是否可以使用任何其他html框架来解决这个问题。一个在android中看到的例子。但是我正在考虑在mac/windows/linux中使用它 最佳答案 我认为您正在寻找的是Electron中的frameless-windows。当您构建BrowserWindow对象时,将transparent:true作为选项传递。varwin=newBrow
ContextmenuOnsomeplatforms,thedraggableareawillbetreatedasanon-clientframe,sowhenyourightclickonitasystemmenuwillpopup.Tomakethecontextmenubehavecorrectlyonallplatformsyoushouldneveruseacustomcontextmenuondraggableareas.取自https://github.com/electron/electron/blob/master/docs/api/frameless-window