我有一个用 electro-forge 构建的电子应用程序。我想为我的应用程序添加以下功能:当用户右键单击其文件系统中的 txt 文件时,上下文菜单将让他使用我的电子应用程序打开 txt 文件。 如何以及在哪里配置 electro-forge 项目中的文件关联? 在 forge.config.js 文件中?该文档没有提供有关此主题的信息。
我应该实现哪些事件侦听器,以便我可以对 txt 文件执行某些操作。例如 - console.log 文件路径。这应该适用于 Linux 和 macOS。
Electron-Forge 不提供任何简单的内置文件关联功能。您可以在存储库问题中找到有关此问题的开放功能请求。
对于 macOS,可以使用
Info.plist
(信息属性列表)文件配置文件关联。根据this问题,您可以将其链接到您的配置中:
"electronPackagerConfig": {
"extendInfo": "[path-to-file]/Info.plist"
}
您可以在链接的问题以及此存储库上找到配置示例(但我个人还没有尝试过其中任何一个)。
对于Windows(我知道您没有问过,但这对其他人可能有用),您需要在Windows注册表中注册文件。我还没有找到这方面的代码示例,除了这个相关问题上的代码示例。还有一个关于 这个 Squirrel.Windows 问题 的(不知何故)相关讨论。
对于Linux,我找不到任何有用的信息。我相信你必须像 Windows 一样编写自定义代码。这是关于 如何将文件类型与 Linux 上的应用程序相关联的教程。
作为替代方案,电子构建器提供开箱即用的文件关联,并可在
通用配置中使用
fileAssociations
选项。