javascript - react /Electron 中的 "SyntaxError: Invalid regular expression flags"

标签 javascript reactjs electron electron-builder

我有一个 React/Electron 应用程序,我正在使用 electron-builder 在 Windows 上构建它。它构建得很好,但是当我尝试运行打包的程序时,我得到了

Uncaught Exception:
C:\My Project\dist\win-unpacked\resources\app.asar\build\electron.js:1
(function (exports, require, module, __filename, __dirname, process, global, Buffer) { return function (exports, require, module, __filename, __dirname) { /home/jd/projects/app/src/start.js
                                                                                                                                                           ^

SyntaxError: Invalid regular expression flags
    at new Script (vm.js:79:7)
    at createScript (vm.js:251:10)
    at Object.runInThisContext (vm.js:303:10)
    at Module._compile (internal/modules/cjs/loader.js:660:28)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:704:10)
    at Module.load (internal/modules/cjs/loader.js:602:32)
    at tryModuleLoad (internal/modules/cjs/loader.js:541:12)
    at Function.Module._load (internal/modules/cjs/loader.js:533:3)
    at Object.<anonymous> (C:\My Project\dist\win-unpacked\resources\electron.asar\browser\init.js:188:8)
    at Object.<anonymous> (C:\My Project\dist\win-unpacked\resources\electron.asar\browser\init.js:190:3)

我正在尝试理解这一点。我解压了 electron.asar 来查看 init.js,它有 189 行(?),第 188 行是

Module._load(path.join(packagePath, mainStartupScript), Module, true)

这似乎是在 Electron 中发生的事情,在我编写的被调用的应用程序之外?这看起来像是一个错误,甚至在到达我的 React 主 start.js 之前。

感谢任何关于如何调试它的想法,如果我可以包含更多有用的信息,请告诉我。

编辑:当然我应该提到,我没有在我的应用程序的任何地方使用任何正则表达式。

编辑 2:我已将我的 package.json 上传到 this gist

编辑 3:这个项目是用 create-react-app

引导的

最佳答案

根据错误信息,有文本被解释为正则表达式。

查看您粘贴的错误消息,您可以看到文件 C:\My Project\dist\win-unpacked\resources\app.asar\build\electron.js 正确启动并且它们包含字符串 /home/jd/projects/app/src/start.js

我认为 /home/jd 被解析为带有标记 jd 的正则表达式,尽管唯一有效的标记是 gimuy ( source ).

我的建议是清理构建目录 C:\My Project\dist\win-unpacked\resources\app.asar\build\ 并尝试再次编译,尽管我没有想一想字符串 /home/jd/projects/app/src/start.js 是如何出现在您构建的 Assets 中的。希望对您有所帮助!

关于javascript - react /Electron 中的 "SyntaxError: Invalid regular expression flags",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54031953/

相关文章:

javascript - 阻止应用程序,直到加载用户数据

javascript - 单击一个 div 时隐藏/显示并放大

reactjs - 读取文本文件 aws-amplify s3 从预签名 URL 读取数据

reactjs - 在某些函数 **names** 上禁用 max-lines-per-function

javascript - 访问不同 ion-content 的 ng-model

javascript - 图表刻度问题

javascript - 提交时从给定的复选框中至少强制选择一个复选框

node.js - 带有 Webpack 的 Electron 原生 NodeJS 模块

reactjs - Electron react 样板 :sub window on clicking a button

node.js - 如何在node.js中执行与我的机器不同的机器的exe