电子:如何为用户数据设置自定义目录(--user-data-dir)

时间:2018-02-02 16:33:01

标签: electron chromium

我想将我的电子应用程序的--user-data-dir设置为自定义目录,在我的情况下,我希望它默认为公共目录中的文件夹,因此运行该应用程序的任何用户都将共享相同的资产目录。

似乎Electron的appendSwitch()函数不支持这个(当我尝试时它没有工作),所以我对如何实现这个开关感到很遗憾。

1 个答案:

答案 0 :(得分:4)

在使用Electron构建的应用程序中,您通常使用主进程中的app.getPath(name)动态获取默认用户数据目录:

const { app } = require ('electron');
const userDataPath = app.getPath ('userData');

也可以使用app.setPath(name, path)

设置自定义目录的路径
app.setPath ('userData', "path/to/new/directory");
  

覆盖与之关联的特殊目录或文件的路径   名称。如果路径指定了不存在的目录,则   目录将由此方法创建。失败时出现错误   抛出。

     

您只能覆盖app.getPath中定义的名称的路径。

     

默认情况下,网页的cookie和缓存将存储在   userData目录。如果要更改此位置,则必须   在app模块的ready事件之前覆盖userData路径   射出。