Electron:如何为用户数据设置自定义目录(--user data dir)
我想将我的electron应用程序的--user data dir设置为自定义目录,在我的情况下,我希望它默认为公共目录中的一个文件夹,以便运行该应用程序的任何用户都将共享相同的资产目录Electron:如何为用户数据设置自定义目录(--user data dir),electron,chromium,Electron,Chromium,我想将我的electron应用程序的--user data dir设置为自定义目录,在我的情况下,我希望它默认为公共目录中的一个文件夹,以便运行该应用程序的任何用户都将共享相同的资产目录 Electron的功能似乎不支持这一点(我尝试时也不起作用),因此我对如何实现这一切换有点迷茫。在使用Electron构建的应用程序中,通常通过使用主进程动态获取默认用户数据目录: const { app } = require ('electron'); const userDataPath = app.ge
Electron的功能似乎不支持这一点(我尝试时也不起作用),因此我对如何实现这一切换有点迷茫。在使用Electron构建的应用程序中,通常通过使用主进程动态获取默认用户数据目录:
const { app } = require ('electron');
const userDataPath = app.getPath ('userData');
还可以使用以下命令设置自定义目录的路径:
重写与关联的特殊目录或文件的路径
名称如果路径指定的目录不存在,则
将使用此方法创建目录。失败时,会出现错误
扔
您只能覆盖app.getPath中定义的名称的路径
默认情况下,网页的cookie和缓存将存储在
用户数据目录。如果你想改变这个位置,你必须
在启动应用程序模块的就绪事件之前覆盖userData路径
发射
解决了我的问题!我一直认为我需要发送一个标志或开关,但没有意识到这是这么简单。太感谢你了!它说,在发出应用程序模块的就绪事件之前,您应该覆盖
userData
path。那会在哪里?在index.js或主electron process文件顶部的任何位置都有一个even-emission-beforeready
?@dguay,您可以在其中设置所有全局变量。只要在侦听和/或调用ready
侦听器之前定义了所有变量,就可以了。
app.setPath ('userData', "path/to/new/directory");