Einführung:
In ES6 ermöglicht uns die Importanweisung den Import Module und stellen Standardexporte mit bestimmten Namen bereit. Können wir einem importierten Modul jedoch basierend auf Laufzeitwerten einen Variablennamen zuweisen?
Frage:
Ist es möglich, Module mit Variablennamen während der Laufzeit mit dem zu importieren ES6-Importanweisung, ähnlich diesem Muster:
<code class="javascript">import something from './utils/' + variableName;</code>
Antwort:
Leider ist diese Syntax für ES6-Importanweisungen nicht gültig. Importe und Exporte in ES6 sind statisch analysierbar und können nicht von Laufzeitinformationen abhängen.
Alternativer Ansatz:
Um ein dynamisches Importverhalten zu erreichen, können Sie die Loader-API (Polyfill) verwenden ), die eine Methode namens „System.import“ bietet. Diese Methode verwendet einen Modulspezifizierer als Argument und gibt ein Versprechen zurück, das in das importierte Modul aufgelöst wird:
<code class="javascript">System.import('./utils/' + variableName).then(function(m) { console.log(m); });</code>
Beachten Sie, dass die Kompatibilität und Unterstützung für die Loader-API je nach Plattform und Browser unterschiedlich ist.
Das obige ist der detaillierte Inhalt vonKönnen wir ES6-Module mit dynamischen Variablennamen importieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!