Ich habe eine potenziell große Angular 2-Anwendung, die wir in mehrere Teile teilen werden (es kann als Bündel in der WebPack-Terminologie betrachtet werden). Darüber hinaus werden wir sie separat erstellen und bereitstellen. So können verschiedene Teile der Anwendung dynamisch von der Hauptanwendung geladen werden (nicht innerhalb derselben Webanwendung - innerhalb mehrerer laufender Dienste, die sich auf verschiedenen physischen Hosts befinden können).Multi-Projekt erstellen und Module mit Webpack dynamisch laden
Webpack bündelt ziemlich schnell und gut. Aber wie ich von der Ausgabe weiß, verwendet es kompliziertes internes Format (unter Verwendung von Modulnummern, die den tatsächlichen Pfaden/Namen zugeordnet sind). Auch das Teilen von Code erfolgt durch Magie, indem die Modul-IDs auf Chunk-Namen abgebildet werden, die dann dynamisch geladen werden können.
Die Probleme hier mit webpack ich sehe:
- Wenn es Zahlen für den Bau verwendet, kann ich nicht einfach einzelne Stücke bauen, die einige Module wie die Modulnummern wiederverwendet werden können, können in Konflikt sein. Ich kenne RecordsPath, aber es ist wie ein Hack innerhalb eines Multiprojektsystems (wie in diesem Fall muss ich die Aufzeichnungen für das ganze System unterstützen und pflegen).
- Ich kann nicht einfach jedes externe Modul dynamisch laden/importieren mit webpack (was ich brauche, damit es funktioniert wie in System.js - System.import ('http://localhost:9900/data/index.js') oder so ähnlich. Das funktioniert nicht in webpack.Es kann ich dies emulieren durch Code-Aufteilung, aber das bedeutet es nur einen Teil des vorhandenen (nicht externen) Code zu trennen und auch nicht so für externe Anwendung
- Ich kann nicht einfach die gemeinsamen Module in verschiedenen wiederverwenden B. kann ich Modul 'A' im Hauptprojekt haben und kann die Projekte p1 und p2 haben, die 'A' importieren müssen. Ich könnte 'A' als extern machen, aber es kann einfach ein kleiner Dienst von der Hauptstelle sein Anwendung
Also eine Idee, wenn es möglich ist, mit Webpack1/2 oder ich Tools wie jspm, System.js, browserify usw. zu sehen? Ich mag die Art und Weise, wie Webpacks Aufgaben erledigen (Konfiguration flexibel, es funktioniert schnell und es kann viele Dinge bündeln), aber diese Probleme machen einige Komplikationen für solche Anwendungsfälle.
Vielen Dank im Voraus.