warum webpack mit Elektron
Ich bin das Experimentieren mit Elektron. Ich sehe eine Menge von Beispielen, die die Verwendung webpack.
Aber warum so etwas wie webpack? Denn soweit ich das sagen kann, Elektron unterstützt require('module')
.
- Elektron ist auf der Oberseite der Knoten. Zu include ein Knoten-Modul aus, das Sie verwenden, müssen Sie die require-Funktion. nodejs.org/dist/latest-v5.x/docs/api/modules.html
- Ich weiß, so ist der einzige Grund für die Verwendung von webpack (in diesem Szenario) ist, wenn Sie wollen, bündeln Sie Ihre Dateien?
- Ja. Und was ist, wenn Sie Ihre Dateien nicht auf JavaScript und benötigt, um zu kompilieren? Zum Beispiel reagieren die Komponenten haben die Endung jsx und kompiliert werden müssen, in JS.
- Webpack wird verwendet, um bundle-front-end JS-code, es hat nichts zu tun mit Elektronen -, aber Sie verwenden können, um kompilieren Sie die app, auf die Sie bündeln und nutzen, zusammen mit Elektronen -
- Wie würde ich das bundle? Beispielcode?
- Ich hatte harte Zeit mit webpack. Am Ende, ich brauche nur zu babel, und es funktioniert Super
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ist es nicht webpack, die in Elektron. Die require Funktion ist Teil der node.js, die die Basis für Elektron.
Mehr Informationen über die Module in den node.js docs:
https://nodejs.org/dist/latest-v5.x/docs/api/modules.html
Aber solange webpack ist auch verfügbar als ein-Knoten-Modul (https://www.npmjs.com/package/webpack) es ist auch möglich, mit webpack mit Elektron. An diesem Punkt sind Sie auch in der Lage, verwenden Sie die build-on-the-fly in der Produktion, da Knoten und Chrom sind auch innerhalb einer app.
Warum webpack mit Elektronen?
Wenn Sie reagieren, oder vue.js Komponenten vielleicht ist es eine gute Idee, um die Komponenten voneinander zu trennen. Bündeln Sie Ihren code in einer app, die Sie brauchen, browserfy oder webpack. Das wäre zum Beispiel ein guter Grund, warum es zu benutzen.
Webpack ist nicht nur ein JS-Modul bundler; es kann verwendet werden, für die Bündelung der statischen Elemente (inline-base64-Bilder, zum Beispiel), kompilieren von Sass - /Less/Stylus/CSS-Module, dead code elimination, Baum-schütteln, und mehr. Mit dem richtigen Lader und config, man muss nur
require('any-type-of-file.extension')
wenn Sie aktiv an der Entwicklung. In meiner persönlichen Erfahrung, aber mehr als all das Webpack ist wertvoll, weil es die dev-server und Hot Module Replacement (HMR), die macht der Live-Reload-fühlen Sie sich wie etwas aus dem finsteren Mittelalter.Zur Erinnerung erhalten Sie alle die Kraft von Gulp/Browserify/Rollup, aber mit HMR auf der Oberseite, die alle in einem einzigen Werkzeug (und viel, viel und viel und viel der Lader ;).
Einrichten Webpack ist ein PITA, keine Frage, aber wenn Sie planen, die Arbeit an einem Elektron-app für eine gute Menge an Zeit, die eingesparte Zeit von HMR allein ist es Wert.
Gibt es keinen Grund, Webpack Elektron, check-out Elektron-kompilieren zu verwenden Babel und WENIGER in Elektron.
const Settings = require('./js/settings.vue');
mit bloßen Elektron, aber ich bekomme einen syntax-Fehler für die erste Zeile meiner.vue
Datei, wo es heißt, dass<
ist ein unerwarteter Charakter. Also gehe ich davon aus, dass der eingebaute Lader nicht die einzelne Datei laden vue Komponenten?Gute Dokumentation zu beginnen, https://webpack.electron.build/
-Verwendung von webpack für source code Bündelung
-Verwendung von webpack-dev-server, die für die Entwicklung
-HMR für beide renderer und die wichtigsten Prozesse
-Verwendung von @babel/preset-env, die automatisch konfiguriert, basierend auf Ihre Elektronen-version
-Möglichkeit zum hinzufügen benutzerdefinierter webpack Lader, plugins, etc.
Add-ons, zur Unterstützung von Elemente wie TypeScript, Less, EJS, etc.