2016-03-31 6 views
1

Ich habe eine Site, die RequireJS nicht verwendet. Ich lade alle meine Code in <script> Knoten index.html.So verwenden Sie ein RequireJS-Modul von einer Nicht-RequireJS-Site

Ich habe ein Modul auf NPM, azure-storage, das ich gerne verwenden würde. Die js Dateien in dem Modul enthalten jedoch Code, der annimmt, dass ich RequireJS verwende; Die Dokumentation sagt, es über eine require() zu verwenden, und die Javascript-Dateien selbst ist mit mehr require() Anrufe übersät.

Es macht mir nichts aus, eine Abhängigkeit von RequireJS zu nehmen, um dieses Paket zu konsumieren. Aber alle Tutorials, die ich fand, gaben mir den Eindruck, dass ich meine gesamte Anwendung in einem RequireJS-Stil restrukturieren musste, bevor ich die Abhängigkeit, die ich auf npm gefunden hatte, kennen konnte.

Bitte sagen Sie mir, dass ich falsch liege. Gibt es eine einfache Möglichkeit, ein RequireJS-Modul für eine Nicht-RequireJS-Site zu nutzen?

Wenn es darauf ankommt, ist meine Web-App auf AngularJS gebaut.

Antwort

1

Das Problem hier ist, Browser unterstützen require oder keine Vorstellung von Modularität, wirklich.

Angenommen, Sie wollen einfach nur, was im globalen Namespace azure-storage Exporte auf einen Namen zuweisen (die azure-storage und ihre Abhängigkeiten übernimmt nur APIs auf dem Browser verfügbar verbrauchen), gibt es Tutorials für browserify oder webpack zu diesem Zweck verwendet wird.

Eine dieser Dateien erstellt das azure-storage Paket und seine Abhängigkeiten in einer soliden JS-Datei, die Sie in einem <script>-Knoten verwenden können, der das Modul zu einem globalen Namen Ihrer Wahl exportiert.