我正在使用 Next.js 和 electron-next 包构建一个电子应用程序,以便 Electron 可以处理来自 Next.js 的“输出”文件夹。该应用程序非常适合开发(适用于所有人的简单 html“hello world”测试);但是,当我使用 electron-builder 打包应用程序时,页面不会加载,并且 DevTools 说它无法加载本地文件。我可以看到由 electron-builder 生成的文件,但在任何地方都找不到静态 html 文件。有什么我想念的吗?静态文件是否包含在 *.asar 文件中?
这适用于 Windows 10 下的 Electron。下面我展示了 electron-builder 的 package.json 文件设置,以及在应用程序入口文件 (index.js) 上打开初始 HTML 文件的调用
// ---------package.json----------
"scripts": {
"start": "electron .",
"build": "next build renderer && next export renderer",
"dist": "npm run build && electron-builder"
},
"build": {
"files": [
"**/*",
"renderer"
]
},
// --------index.js----------
// I can confirm that /renderer/out/start.html file is created
const devPath = "http://localhost:8000/start"
const prodPath = path.resolve('renderer/out/start.html')
const entry = isDev ? devPath : ('file://' + prodPath)
console.log(entry)
win.loadURL(entry)
这是我得到的错误:
不允许加载本地资源:file:///C:/Users//Desktop/text_exc_app/dist/win-unpacked/resources/renderer/out/start.html