0

我开发了一个具有以下技术堆栈的电子应用程序:

  • 带有 Babel 的 NodeJS (10.15) 允许 ES6 导入/导出语法。
  • Sequelize 在 SQLite 和 GraphQL 上处理内部数据库。
  • 用于视图的 ReactJS(捆绑)。

我已将所有内容配置为与 Electron 一起使用,并且在项目根文件夹中运行“electron”命令可以正常工作。

现在我正在尝试使用本教程分发它:https ://electronjs.org/docs/tutorial/application-distribution

所以我只是下载了 Windows 的 4.1.4 二进制文件并将项目文件夹移动到 resources/app/ 下

但是运行 electron.exe 我有以下错误:

App threw an error during load
TypeError: Cannot create property 'default' on symbol 'Symbol(nodejs.util.inspect.custom)'
    at Object.<anonymous> (C:\workspace\myapp\resources\app\node_modules\graphql\jsutils\nodejsCustomInspectSymbol.js:18:84)
    at Object.<anonymous> (C:\workspace\myapp\resources\app\node_modules\graphql\jsutils\nodejsCustomInspectSymbol.js:20:3)
    at Module._compile (internal/modules/cjs/loader.js:711:30)
    at Module._compile (C:\workspace\myapp\resources\app\node_modules\pirates\lib\index.js:83:24)
    at Module._extensions..js (internal/modules/cjs/loader.js:722:10)
    at Object.newLoader [as .js] (C:\workspace\myapp\resources\app\node_modules\pirates\lib\index.js:88:7)
    at Module.load (internal/modules/cjs/loader.js:620:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:559:12)
    at Function.Module._load (internal/modules/cjs/loader.js:551:3)
    at Module.require (internal/modules/cjs/loader.js:658:17)
    at require (internal/modules/cjs/helpers.js:20:18)
    at Object.<anonymous> (C:\workspace\myapp\resources\app\node_modules\graphql\jsutils\defineToJSON.js:8:57)
    at Object.<anonymous> (C:\workspace\myapp\resources\app\node_modules\graphql\jsutils\defineToJSON.js:36:3)
    at Module._compile (internal/modules/cjs/loader.js:711:30)
    at Module._compile (C:\workspace\myapp\resources\app\node_modules\pirates\lib\index.js:83:24)
    at Module._extensions..js (internal/modules/cjs/loader.js:722:10)
    at Object.newLoader [as .js] (C:\workspace\myapp\resources\app\node_modules\pirates\lib\index.js:88:7)
    at Module.load (internal/modules/cjs/loader.js:620:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:559:12)
    at Function.Module._load (internal/modules/cjs/loader.js:551:3)
    at Module.require (internal/modules/cjs/loader.js:658:17)
    at require (internal/modules/cjs/helpers.js:20:18)

我还尝试从二进制文件夹运行 npx 电子资源/应用程序/,但我遇到了同样的错误。所以我认为问题在于路径。

我也尝试过 electron-packager 并且错误是相同的,因为该工具执行与上述指南相同的过程。

我能做些什么来解决它?

UPDATE1:经过一些调查,我发现 babel 会导致问题。我猜当您从父文件夹运行项目时。我正在努力寻找解决方案

4

1 回答 1

1

我已经解决了使用 babel/register 的这种配置:

const rootPath=path.resolve(path.join(__dirname, "../../"));

require("@babel/register")({
    root: rootPath,
    extends: path.join(rootPath, '.babelrc'),
    ignore: [/node_modules/],
    only: [rootPath],
})
于 2019-04-13T14:19:02.620 回答