Abend,
Ich bin in der Verwendung von electron zu einem vorhandenen angular2 Build zu packen. Ich dachte, ich hätte einen Trockenlauf, aber die eigentliche Verpackung scheint zu versagen (siehe letzten Schritt unten) und ich möchte verstehen, warum. Hier ist, was ich tue ...Electron - nicht erlaubt, lokale Ressource zu laden
Projekt erstellen
Verwenden angular-cli ein neues Projekt starten ng new electron-ng2-cli --style=scss
Elektron Installieren und electron-builder
bearbeiten package.json
Nehmen Sie die folgenden Ergänzungen ...
"main": "main.js"
und fügen Sie den folgenden auf die scripts
...
"pack": "build --dir",
"dist": "build",
"electron": "electron main.js",
"postinstall": "install-app-deps"
erstellen main.js
ich nur den Code aus dem electron quick start kopiert. Die einzige Änderung, die ich machen, ist an die Stelle von index.html
, die ich /dist/index.html
gesetzt
Basis Amend
In index.html
Änderung <base="/">
zu <base="./">
Pack-Code
Run ng build
. Damit sind alle verpackt Code in /dist
Testlauf
Run npm run electron
. Das funktioniert gut. Eine Elektronen-App feuert an und ich sehe das kantige Zeug darin laufen.
App für die Verteilung erstellen
Führen Sie npm run pack
aus, um eine verpackte App zu erstellen. Die Verpackung scheint in Ordnung zu gehen - ich bekomme eine Warnung über ein fehlendes Symbol und eine Warnung, dass mein Code nicht signiert ist, aber ich vermute, dass sie nicht tödlich sein sollten?
Das Problem ist, dass, wenn ich jetzt die App mit einem Doppelklick in Finder
ich einen Fehler in der Konsole laufen zu sagen: Not allowed to load local resource: file:///Users/<username>/Documents/development/electron-ng2-cli/dist/mac/electron-ng2-cli.app/Contents/Resources/app.asar/dist/index.html
So kann jemand erklären, was zwischen der gepackte Anwendung unterscheidet, und einen ausfällt, die ok läuft wenn ich
npm run electron
verwende?
Was kann ich tun, um dieses Problem zu beheben und die App ordnungsgemäß zu starten?
Danke, dass Sie es bis zum Ende gemacht haben. Dies wurde länger als ich wollte, aber ich hoffe, ich habe mich selbst erklärt. Wenn Sie irgendwelche Hinweise helfen oder geben kann, das wäre toll - viele gute Stimmung in Ihrer allgemeinen Richtung gedacht werden :)
Prost alle
ist es eine andere Möglichkeit, dies zu umgehen, als es auf diese Weise zu tun? –