App.getPath("userData") 似乎给出了错误的路径

App.getPath("userData") seems to give the wrong path

我有一个简单的应用程序,它基于 electron-quick-start,几乎没有任何变化。我正在尝试使用 nedb 并将其传递到我的 userData 路径中。

我的Package.json

  "name": "my-electron-app",
  "version": "1.0.0",
  "description": "A minimal Electron application",
  "main": "main.js",
  "scripts": {
    "start": "electron main.js"
  }

我的渲染器脚本(app.js):

const remote = require('electron').remote;
const app = remote.app;

console.log(app.getPath('userData'))

根据控制台,userData 是

C:\Users\me\AppData\Roaming\Electron

不应该是这个吗?

C:\Users\me\AppData\Roaming\my-electron-app

我认为问题在于您将 Electron 直接指向您的脚本,这意味着 Electron 完全忽略了您的 package.json 文件的存在。因此它不知道您的应用程序的名称。

尝试:

"scripts": {
  "start": "electron ."
}

要完成已接受的答案,electron 命令接受文件夹或文件作为参数。

根据 electron --help,如果您提供一个文件夹,它应该包含一个 index.js 文件(您的应用程序)或一个带有入口点的 package.json 文件。因此你可以指定你想要的任何入口点:

{
    name:"my-electron-app",
    main: "app/index.js"
    ...

简答,正确设置 package.json 的 main 字段和 运行 electron folder-containing-your-package-json.