Ich verwende RequireJS, um meine Abhängigkeiten in der Entwicklung zu verwalten, aber bei der Produktion möchte ich alle Abhängigkeiten von einem AMD-Loader entfernen. Es sieht so aus, als ob der RequireJS-Optimierer eine Datei erstellt, die zur Laufzeit immer noch eine AMD-Last verwendet - ich suche nur nach einer statischen (nicht AMD-abhängigen, aber immer noch AMD-kompatiblen) Datei, etwa nach jquery Quelle, scheint es, sie manuell ihre Abhängigkeiten in ihrer Grunt-Datei bestellen). Ist das möglich?
Ich bin offen für die Verwendung anderer Bibliotheken außer RequireJS.
Hinweis: Dies ähnelt meiner anderen Frage Javascript requiresjs in Entwicklung aber in der Produktion kompiliert , aber in diesem Fall möchte ich AMD alle zusammen entfernen.
Wenn Sie möchten, dass Ihr Skript über ein <script>
-Tag oder AMD ladbar ist, möchten Sie vielleicht etwas basierend auf wie meine EventEmitter-Klasse sich selbst aussetzt .
Dies macht das Objekt über AMD, CommonJS (Knoten) und das globale Objekt (d. h. window
) verfügbar. Dies hat einen Hauptvorbehalt, es ist für Single-File-Skripte gedacht, die nur ihre Klasse über AMD offen legen wollen.
Wenn Sie viele Module haben, möchten Sie vielleicht zuerst das Skript mit r.js kompilieren, AMD shimpfen mit Almond und benutze dann etwas wie oben, um es oben auf verschiedene Arten zu enthüllen.
Ich hatte das gleiche Problem wie du.
Endlich habe ich es gelöst, und ich habe eine Grundstruktur von requireJS-Projekt und eine Gruntfile erstellt, die die Automatisierung durchführen.
Ich hoffe, das hilft dir.
Tags und Links javascript optimization requirejs concatenation amd