2016-09-15 6 views
4

Ich fing an, ein neues Projekt zu entwickeln, wo Frontend auf reagiert, Backend auf Java ist. Ich benutze nodejs und npm nicht.Ist es möglich: Webpack ohne npm?

Ich versuche, die Komponente zu importieren, die ich entwickelt habe, und bekomme den Fehler "ReferenceError: require is not defined". Soweit ich es verstehe, ist die Lösung, alle react jsx-Dateien zu einem zu kombinieren, mit Tool wie Webpack.

Kann es mit Hilfe von Webpack, ohne Installation von Npm, mit Hilfe von Maven und IntelliJ erreicht werden?

+0

Sie müssen NodeJS nicht unbedingt als Back-End für die Verwendung von Webpack verwenden. Ich habe NodeJS auf meinem System installiert, um diesen Kompilierungsschritt für eine Client-Anwendung in einem C# -Backend auszuführen. Alternativ können Sie RequireJS verwenden, um Importe auf dem Client zu verwalten. –

+0

Sollte ich npm installiert haben? Kann es vermieden werden? – YuriR

+0

Ich glaube, npm kommt mit NodeJS nativ, aber Sie müssen es nicht verwenden. –

Antwort

5

Praktisch: nein.

Webpack ist eine Node-basierte Anwendung, und um sie zu installieren und auszuführen, benötigen Sie sowohl Node als auch NPM.

Nicht nur das, aber damit Webpack nichts Sinnvolles tun kann, benötigt es "Loader", die Knotenmodule sind, die ebenfalls mit NPM installiert werden sollen.

Zum Schluss sollten bei der Entwicklung von React-Apps alle externen Module, auf die Ihre App angewiesen ist (einschließlich React selbst), ebenfalls mit NPM installiert werden.

Sie müssen jedoch Node/NPM nicht in Ihrer Produktionsumgebung installieren. Webpack generiert JS-Bundles, die Sie genauso wie jedes normale JS-Skript in Ihren HTML-Code laden können, und dieser Teil des Prozesses erfordert weder Node noch NPM.

Sie brauchen es also während der Entwicklung, aber nicht in der Produktion.

+0

Hmmm ist, also kann eine Anwendung mit Webpack auf Apache gehostet werden, muss aber mit npm laufen und Knoten installiert haben? Ich versuche, eine Vue.js App zu installieren, die Webpack und Springboot. Vielen Dank! –

+0

@CoryTam Sie können den Build-Prozess (der das JS-Bundle erstellt) normalerweise auf einem anderen Computer ausführen und die Bundle-Datei auf den Server kopieren, der in diesem Fall nicht selbst Node.js/NPM/Webpack installiert haben muss. – robertklep

Verwandte Themen