11 votes

Erreur de typecript : erreur TS2705 : Une fonction ou méthode asynchrone dans ES5/ES3 nécessite le constructeur 'Promise'.

Erreur de typographie erreur TS2705 : Une fonction ou méthode asynchrone dans ES5/ES3 nécessite le constructeur 'Promise'. Assurez-vous d'avoir une déclaration pour le constructeur 'Promise' ou incluez 'ES2015' dans votre --lib option.

J'obtiens cette erreur lorsque j'essaie de compiler n'importe quelle fonction contenant un async await. Mon fichier tsconfig.json est le suivant

{
  "compilerOptions": {
    "module": "commonjs",
    "lib": [ "es2015" ],
    "module":"commonjs",
    "target": "es6",
    "moduleResolution" : "node",
    "rootDir": "src/",
    "sourceMap": true
  },
  "includes" : [
    "src/**/*.ts"
  ],
  "exclude": [
    "node_modules"
  ]
}

Aidez-nous

10voto

devilmaster Points 439

Comme nous l'avons vu dans le commentaire, vous exécutez le compilateur en ligne de commande en spécifiant les fichiers :

tsc filename.ts

Cela signifie en fait que le compilateur ne tiendra pas compte de votre tsconfig.json il s'attend à ce que vous spécifiiez tous les paramètres sur la ligne de commande.

Si vous souhaitez utiliser un fichier de configuration de projet (alias tsocnfig.json ), vous devez soit le spécifier explicitement à l'aide de l'option -p option. Voir aussi aquí pour les options du compilateur.

tsc -p tsconfig.json

Ou si vous exécutez le compilateur directement dans le répertoire du projet où se trouve le fichier tsconfig.json est situé, vous pouvez simplement lancer le compilateur sans aucune option et il choisira le fichier de projet nommé tsconfig.json dans le répertoire actuel

tsc

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X