草庐IT

Electron-ChatGPT

全部标签

javascript - 如何使用 Electron 显示打开的文件 native 对话框?

我正在尝试向我的Electron应用程序添加功能,允许用户在应用程序中打开文件,特别是纯文本文件。查看Electron文档后,我找到了this页。我将此代码添加到我的app.js文件中,我在我的index.html中链接了该文件。varfs=require('fs');vardialog=require('electron');$openFile=$('#openBtn');$editor=$('#editor');$openFile.click(function(){dialog.showOpenDialog(function(fileNames){if(fileNames===un

javascript - 如何在不使用 -webkit-app-region 的情况下在 Electron 中移动无框窗口

我一直试图在false上移动一个无框窗口,但现在我想通过拖动一个元素(标题栏)来移动整个窗口,我试过-webkit-app-region:drag;但是好像不行,我也试过https://www.npmjs.com/package/electron-drag但它也不起作用。 最佳答案 由于您的窗口是无框的,因此您可以使用属性-webkit-app-region,即使您的IDE说它不是,它仍然有效。出于用户体验考虑,您应该禁止文本选择并在标题栏内拖动按钮。.titlebar{-webkit-user-select:none;-webki

javascript - 'console.log' 在测试 Electron 应用程序时在 Webstorm 中不起作用

在Webstorm(Windows7)的“正常”Node应用程序中,我可以使用console.log写入Webstorm的控制台窗口。一旦我使用Electron创建桌面应用程序,控制台输出就不再显示在Webstorm控制台窗口中,尽管我使用相同的Node命令“C:\ProgramFiles\nodejs\node.exe”。主要区别在于,在运行配置中,我必须使用Node参数'C:\Users\Username\AppData\Roaming\npm\node_modules\electron-prebuilt\cli.js'来获得正确的Electron入口点。当我直接从Windows控

javascript - 如何隐藏使用 Electron 构建的 nodeJS 解决方案的源代码(asar 文件)?

关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭6年前。Improvethisquestion我寻找隐藏使用Electron构建的解决方案代码的最佳方法。有什么想法吗?用具有asar文件的Electron构建解决方案是不够的。我真的需要隐藏代码,这样它应该不容易检索。

javascript - Electron 拦截文件 :///protocol to read inside zip files

我想用Electron阅读内部的zip文件,就好像它们是文件夹一样,比如/myfolder/myarchive.zip/picture.jpg。为此,我正在考虑拦截文件协议(protocol)protocol.interceptFileProtocol('file',(request,callback)=>{if(insideZipArchive){//respondwithzipfilecontents}else{//defaultBehavior}},(error)=>{if(error)console.error('Failedtoregisterprotocol')})如何调用

javascript - 从 Electron 应用程序内部使用 Dropbox Chooser

我正在使用Electron(以前称为Atom-Shell)创建现有Angular网络应用程序的桌面版本。大多数功能开箱即用,但我在使用DropboxChooser时遇到了一些问题。我的网络应用程序允许用户使用选择器从Dropbox导入文件。在Electron中,这会导致为选择器创建一个新的BrowserWindow。但是新窗口的window.opener属性为null,这基本上使得Chooser窗口无法与原窗口通信。这使得它变得毫无用处,因为有效地选择一个文件没有任何作用。我知道Slack桌面应用程序使用Electron,并且他们已经能够以某种方式克服这个问题(DropboxChoos

javascript - Electron:将选项卡拖到另一个打开的窗口中

我正在创建一个Electron应用程序,它看起来类似于谷歌浏览器,具有针对不同页面的多个动态选项卡。该应用程序还支持多个打开的窗口。我希望能够在这些窗口之间拖动选项卡。我已经知道如何使用ipcRenderer在我的窗口之间发送消息,但我遇到了一些障碍:1)我无法将html元素拖出窗口。如何将选项卡(或看起来相同的东西)拖到窗口外?我找到了discussion在有人声称他们能够实现这一目标的原子论坛上,但没有详细说明如何实现。他们声称“nativeHTML5拖放与IPC消息传递相结合是解决方案”。其他人在下面链接了一个GitHub示例,但该示例已被删除。2)如何检测何时将选项卡拖到另一个

javascript - 不能在 Electron 中要求来自渲染器的自定义模块

我正在尝试制作一些我可以导入以用于我的项目的类,但我在导入我正在制作的模块时遇到了一些问题。我的文件结构如下所示:├╴main.js└╴src/├╴html/│└╴index.html├╴css/│└╴index.css└╴js/├╴index.js└╴participant.js所有index.*文件都相互关联,因此具有相同的名称。有问题的麻烦制造者是index.js,我的index.html渲染器和participant.js这是我得到的代码://index.jsconst{Participant}=require("./participant");constaddNodeBtn=

javascript - Electron: app.on ('ready' ) 永远不会被调用

我正在尝试使用TypeScript和webpack运行electron应用程序。我有这个main.ts文件和已编译的main.js文件。我编辑了main.js以便我可以查看是否调用了ready。主要.tsimport{app,BrowserWindow}from'electron';import*asurlfrom'url';import*aspathfrom'path';letwin:Electron.BrowserWindow=null;console.log('start');console.log(app.isReady);app.on('ready',()=>{console

javascript - Electron 打包后不支持 ES6

我正在使用各种ES6syntax(如import等)&React我的JSX中的代码(Electron)基于应用程序。在开发过程中,我使用electron-prebuilt-compile包(作为dev-dependency)以支持这些新功能,它工作得很好,没有任何错误。但是在使用electron-packager打包我的应用程序之后打包并运行可分发的应用程序文件时,我遇到了不受支持的ES6相关错误,例如:Unexpectedtokenimport这就是我运行electron-packager命令的方式(注意平台和架构标志):electron-packager.MyCoolApp--pl