ich habe noch nie mit webpack gearbeitet und meine JS-Kenntnisse sind schlecht. Ich habe eine Discourse-Installation, die von einer IP-Adresse aus läuft, was „nicht unterstützt“ wird. Es funktioniert, aber die Symbole fehlen, da versucht wird, http://192.168.0.22:8080/svg-sprite/192.168.0.22:8080/svg-3-c1066beb12cc75cc4c3bc42f218f381c862e7905.js zu laden, welches die Symbole enthält, aber aufgrund der Zahlen fehlschlägt. Alles andere würde funktionieren, wie z.B. http://192.168.0.22:8080/svg-sprite/-/svg-3-c1066beb12cc75cc4c3bc42f218f381c862e7905.js (man kann alles dort einfügen, wo das - ist, daher bin ich mir nicht ganz sicher, warum es überhaupt existiert, aber das ist nicht meine Entscheidung).
Ich versuche, den richtigen Host laden zu lassen, also habe ich ein kleines Skript dafür erstellt, aber dank webpack kann ich nicht über Imports auf den Loader zugreifen:
Aufgrund dieser Einschränkung muss ich in das webpack von Discourse gelangen, das nirgends zu finden ist. Wie kann ich ein Skript in den Ordner einfügen?
Wir verwenden nicht das native Modulauflösungssystem des Browsers, daher funktionieren <script type="module"> mit Imports und Exports nicht wie erwartet.
Stattdessen können Sie einen Initialisierer in einem Discourse-Theme/Plugin erstellen und diesen verwenden, um den loadSprites()-Code auszuführen.
Es ist für Hosting-Umgebungen gedacht, in denen dieselbe CDN-Domain von mehreren Discourse-Foren verwendet wird.
In der Tat… es wird nicht unterstützt. Sie werden sehr wahrscheinlich auf andere Probleme stoßen.
Danke… es hat funktioniert! Für alle anderen, die dieses Problem in Zukunft haben, hier ist das Repository, das ich zur Behebung verwendet habe (vorausgesetzt, Sie laufen auf 192.168.0.22:8080)