我有一个Electron(1.7.10)应用程序报告它在我的ASAR中找不到7个PNG文件中的5个。所有7个PNG都在同一个文件夹中,其中2个在屏幕上显示正常。另外5个报告 net :: ERR_FILE_NOT_FOUND 。
img标记的所有src属性都是动态生成的,并使用相对路径(assets/images/MyImage.png
)。如果我提取ASAR,我可以在正确的文件夹中看到那里的文件(由src属性引用)。
如果我使用控制台将浏览器的位置设置为其中一个图像(document.location.href = "file:///path/to/app.asar/dist/assets/images/MyImage.png"
),我会得到相同的结果 - 其中2个显示OK。
在打包我的应用程序(使用电子构建器)之前,所有图像都能正确显示。
有什么想法吗?
谢谢,
TTE
答案 0 :(得分:0)
const path = require('path');
path.join(__dirname, 'assets/images/MyImage.png');
答案 1 :(得分:0)
让我猜想,您正在使用react-router和BrowserRouter构建React SPA?
如果是,请改用HashRouter。默认情况下,Electron不使用SPA的路由,因为SPA路由会更改,但是资源路径始终相对于index.html。