electronic-builderがパッケージ化された後、ローカルリソースをロードできませんが表示されます:
After Electron Builder Is Packaged
私は電子に従事し始めました。 reactとelectronを統合した後、ローカルノードがサービスを開始し、すべてが完璧であるように見えましたが、reactをビルドファイルにパッケージ化すると、
main.jsを変更しました
mainWindow.loadURL(url.format({ pathname: path.join(__dirname, './build/index.html'), protocol: 'file:', slashes: true }))
電子ビルダーを使用してパッケージ化します。ビルド構成は次のとおりです。
'build': { 'appId': 'com.XXX.app', 'directories': { 'output': 'builder' }, 'win': { 'target': [ 'nsis', 'zip' ] } },
しかし、それは走った後に現れました
この状況には2つの可能性があります。
1. file://のようなローカルファイルがhtmlファイルにロードされます
2.electron-builderはビルドフォルダーをパッケージ化しませんでした
調査の結果、electron-buildはビルドフォルダーをapp.asarファイルにパッケージ化していないことが判明しました。
解決:
'build': { 'appId': 'com.wss.app', 'directories': { 'output': 'builder' }, 'win': { 'target': [ 'nsis', 'zip' ] }, 'files': [ 'build/**/*', 'main.js', 'public/preload.js' ] },
ビルド構成にファイルファイルを追加します。これは、すべてをパッケージ化することを意味します。最も重要なことは、main.jsが内部にある必要があるということです。