【发布时间】:2018-09-12 06:59:58
【问题描述】:
我正在使用 Electron 制作一个多平台应用程序,并且我正在尝试使用 electron-builder 进行文件关联。
我已将它添加到配置中并且工作正常,当我双击文件时,它会打开应用程序,这是预期的,但我不知道如何在我的电子应用程序上接收该文件,我'我用谷歌搜索,在电子生成器 repo 上查看了问题,但没有找到任何东西。到目前为止,我发现的唯一一件事是您应该将其作为自定义协议处理,如果我想从路径或 url 打开文件,这对我来说很有意义,但我不明白如何双击文件会触发自定义协议,当您双击与您的应用关联的文件时,电子是否使用定义的自定义协议?
我也没有在官方文档上找到任何东西,有什么帮助吗?
提前谢谢你。
【问题讨论】:
-
您可以创建自定义协议以在终端和/或执行程序中打开您的应用程序,例如
myapp: --params,这是您想要的吗? -
嗯,不是真的,我希望能够通过双击打开关联文件(例如 test.myapp),我为此使用了文件关联,但我没有看到在我的应用程序上接收文件路径的方法。我的意思是,我不想每次都输入协议来打开文件,我希望能够通过双击文件来完成。
-
我目前也在寻找答案,虽然我不确定,但我的 猜测 是答案在于 Electron 所基于的 NodeJS API。我想通过文件类型关联启动应用程序与在传递一些参数时启动应用程序相同,因此文件路径应显示在
process.argv中。我只是还没来得及测试这个理论。 -
遇到了这个related question,看着cmets,我的怀疑似乎是正确的。
open-file(特定于 macOS)在 NodeJS 文档中提到将process.argv用于 windows。
标签: javascript electron electron-builder electron-packager