Ich habe ein Projekt in Typescript geschrieben, die ein SystemJS-Bundle mit module:'system'
und outFile
ausgibt. Ich möchte einige NPM-installierte CJS-Module einbinden. Ist es möglich, sie zu importieren und als SystemJS-Module in das Bundle zu senden? Es scheint nicht zu sein, aber ich kann keine definitive Antwort darauf finden.Import commonJS-Modul und emittieren SystemJS-Bundle
Antwort
Standardmäßig wird TypeScript nicht alle Abhängigkeiten in einer einzigen Datei bündeln. Es wird nur Ihre Dateien bündeln. Wenn Sie die Abhängigkeiten ebenfalls bündeln wollen, sollten Sie das TsProject Paket überprüfen.
Wenn ich einen relativen Pfad zu 'import foo = require ('../ node_modules/bar') 'übergebe, wird es in das Bundle eingeschlossen, aber es wird nicht als SystemJS-Modul registriert, wie bei meinem anderen Projekt Importe. So scheint es, dass, wenn ich 'require ('bar')' und es automatisch den Ordner node_modules löst, es nicht die Abhängigkeit ausgibt. Wenn ich ihm einen relativen Pfad gebe, gibt er zwar aus, ignoriert aber den in den Compiler-Optionen eingestellten Modultyp. – muaddoob
Ist dieses Verhalten beabsichtigt? Gibt es empfohlene Workflows, die keine separate Konfiguration für die Verarbeitung von Drittanbieter-Depots erfordern? Idealerweise würde ich gerne importieren, unabhängig davon, ob der Code in meinem Projekt src oder unter 'node_modules' existiert und der Compiler ein einzelnes Bündel mit allen aufgelösten Dependenzen aussendet. Die Installation von libs über NPM und das Warten auf die Konfiguration, um sie zu laden, um Abhängigkeiten für ein separates Projektbündel zu erfüllen, ist ein wenig schmerzhaft und fehleranfällig. – muaddoob
Dieser Artikel http://www.jbrently.com/es6-module-with-typescript-and-webpack/ hat eine gute Erklärung zum Thema – vintem
- 1. QtRuby emittieren
- 2. emittieren Signal Fenster
- 3. Warum emittieren (meta.id, NULL)
- 4. socket.io emittieren feuern dreimal
- 5. Angular2 ngOnDestroy, emittieren Ereignis
- 6. SocketIO NodeJS Gamemodus Typ emittieren
- 7. GCC emittieren ARM idiv Anweisungen
- 8. GCC emittieren keine Warnung, wenn
- 9. Socket.io Client emittieren alte Daten
- 10. Unterschied zwischen Versand und emittieren in Flux/React Native
- 11. RxJS - Buffer bis zu n Elemente und emittieren diese Puffer
- 12. AngularJS - MeanJS Artikel aktualisieren, blink und lädt auf Socket emittieren
- 13. Module.exports und es6 Import
- 14. JSPM und Typescript-Import
- 15. Import und zeigt Texturen
- 16. RxJava emittieren Einzelteile mit verschiedenen Perioden
- 17. Emittieren SIGINT Ereignis von innerhalb Knoten
- 18. Howto emittieren einen Delegaten oder Lambda-Ausdruck
- 19. node.js emittieren Ereignis nach einer bestimmten Zeit
- 20. Emittieren eines Ereignisses in Node.js C++ - Addon
- 21. Wie zu emittieren Signale mit Parametern
- 22. Emittieren Sie Javascript Debugger; von Script Sharp
- 23. socket.io - emittieren SocketId (single-Client) nicht funktioniert
- 24. rxjs Wie emittieren Sie einen einzelnen Wert
- 25. Socket.io-Trigger emittieren mit Scroll-Ereignis?
- 26. Ist es ineffizient, QByteArray zu emittieren?
- 27. Unterschied zwischen "Import X" und "von X Import *"?
- 28. Warum gibt es einen Unterschied zwischen "Import" und "Import *"?
- 29. Unterschied zwischen Import tkinter als tk und von tkinter import
- 30. die Differenz zwischen Import * bestätigen und von xxx import *
Ich verstehe nicht, Sie möchten die Pakete abhängig von der OutFile bündeln? – vintem
Ja, ich möchte Pakete "npm installieren" können, sie in den Projektcode importieren und ein einzelnes Paket erstellen. – muaddoob