Dynamiquement le module d'importation en caractères d'imprimerie
Qu'est-ce que le fichier d'enregistrement le mode de chargement des modules dynamiquement (chemin d'accès au module est connu au moment de l'exécution)? J'ai essayé celui-ci:
var x = "someplace"
import a = module(x)
Mais il semble que la Machine compilateur voudrais voir le chemin comme une chaîne de caractères dans l'import/module au moment de la compilation:
$ tsc test.ts
/tmp/test.ts(2,19): error TS1003: Identifier expected.
/tmp/test.ts(2,20): error TS1005: ';' expected.
Je sais que je peux par exemple utiliser directement RequireJS (si j'utilise amd module de format), mais qui ne se sentent pas le droit de me - c'est la solution pour un particulier de la bibliothèque.
- Avec Tapuscrit 0.9.1 au lieu de "module", vous devez utiliser le 'besoin' d'Essayer de changer votre import: importer un = require(x)
Vous devez vous connecter pour publier un commentaire.
ES la proposition dynamique d'importation est pris en charge depuis Tapuscrit 2.4. Le Document est ici.
import
fonction est synchronisé et renvoie unPromise
.Ou à l'aide de
async/await
:Vous devez spécifier une chaîne codée en dur. Les Variables ne fonctionnera pas.
Mise à jour
JavaScript maintenant obtenu dynamique des importations. Ainsi, vous pouvez faire
import(x)
:https://developers.google.com/web/updates/2017/11/dynamic-importLa machine prend en charge aussi bien. Cela dit vous voulez toujours que l'argument soit de manière statique analysables de sécurité de type par exemple