ES6: import-Modul von URL
Ist es möglich, import-javascript-Modul von externer url in ES6?
Habe ich versucht (mit babel-Knoten):
import mymodule from 'http://...mysite.../myscript.js';
//Error: Cannot find module 'http://...mysite.../myscript.js'
Das kannst du nicht tun.
InformationsquelleAutor madox2 | 2016-01-05
Du musst angemeldet sein, um einen Kommentar abzugeben.
2018-Update: Das Modul loader-Spezifikation ist heute ein Teil der ES-Spec - was Sie beschreiben, ist zulässig und möglich mit
<script type="module">
im Browser und mit einer benutzerdefinierten--loader
mit Node.js sowie mit Deno, wenn Sie in.Den Modul-loader-spec und den import - /export-syntax getrennt sind. Das ist also eine Eigenschaft der Modul-loader (nicht Teil der ES-spec). Wenn Sie ein Modul verwenden-loader, unterstützt plugins wie SystemJS.
Warten Sie, ist nicht die
import
syntax der native-Modul-Lader im ES6?Angabe der syntax für das laden von Modulen (z.B.
import
undexport
syntax) und die Angabe wie zu laden, es sind zwei getrennte Aufgaben - browser und node.js würde verwenden unterschiedliche Mechanismen für die es zum Beispiel - so kann es nicht Teil der Sprache. Im Allgemeinen - die Interaktion mit der Umwelt ist nicht eine Aufgabe, die Skillung interessiert.Richtig, den zugrunde liegenden Mechanismus kann unterschiedlich sein, aber die import-syntax soll das Modul importieren richtig? Offensichtlich haben wir keine aktuelle Beispiele für die syntax arbeiten nativ, aber vermutlich irgendwann in der Zukunft-Browser unterstützen es.
Chrome und Firefox unterstützen unter einer Flagge. Die Skillung ist polyfilled von github.com/ModuleLoader/es6-module-loader (eine Teilmenge der systemjs). Dateien, rufen Sie
System.register
würde wahrscheinlich arbeiten - andere Dateien wahrscheinlich nicht im moment. Es ist auchscript type='module'
für das schreiben von Modul-code im browser. Dies ist alle meist zu raten.InformationsquelleAutor Benjamin Gruenbaum
TL;DR:
Für jetzt, keine.
Lange Antwort:
Gibt es zwei verschiedene Spezifikationen: das ES6 definiert die syntax zu exportieren/importieren.
Und es ist die Loader Spez, dass tatsächlich definiert wie diese Module geladen werden.
Spec-sprechen, abgesehen, ist der wichtige Teil für uns Entwickler ist:
So, wir sind abhängig von der host-Umgebung (Knoten, browser, babel, etc.) zu lösen/laden der Module, die für uns und bieten Haken, um den Prozess.
InformationsquelleAutor madcampos
Könnten Sie auch scriptjs, was in meinem Fall benötigt weniger configs.
InformationsquelleAutor BaptWaels