the method es5 es3 await async typescript async-await

method - typescript await promise result



ts Una función o método asíncrono en ES5/ES3 requiere el constructor ''Promise'' (5)

Hola, estoy usando async / await en mi proyecto TypeScript, pero obtengo este registro:

[ts] Una función o método asíncrono en ES5 / ES3 requiere el constructor ''Promise''. Asegúrese de tener una declaración para el constructor ''Promise'' o incluya ''ES2015'' en su opción --lib .

¿Cómo puedo resolver eso?


Como dice el mensaje de error, agregue lib: es2015 a su tsconfig.json

// tsconfig.json { "compilerOptions": { "lib": [ "es2015" ] } }

ACTUALIZACIÓN: si esto no funciona para usted, intente esto:

JetBrains IDE como WebStorm, usa su propia implementación por defecto. Asegúrese de configurarlo para utilizar el servicio de lenguaje TypeScript en su lugar.

Para Visual Studio, los archivos de proyecto y tsconfig.json son mutuamente excluyentes. Deberá configurar su proyecto directamente.

https://github.com/Microsoft/TypeScript/issues/3983#issuecomment-123861491


Estoy usando VS2017 v15.8.2 y Typecript 2.4.2 en un proyecto Angular 4 (en un proyecto de biblioteca de clase en mi solución, no un proyecto de mecanografía). Pude eliminar el error / advertencia en VS deshabilitando el servicio de lenguaje JavaScript :

Opciones => Editor de texto => JavaScript / TypeScript => Servicio de lenguaje

Reiniciar VS.

Espero que esto ayude.


Pruebe este paquete que contiene definiciones de tipo para es6-promise

npm install --save @types/es6-promise


Si está en VS, elimine tsconfig.json y haga clic con el botón derecho en el proyecto en el Explorador de soluciones, luego haga clic en Propiedades-> Generar TypeScript en general, cambie los siguientes

  • Versión ECMAScript: ECMAScript 6

  • Sistema de módulos: ES2015


También puede usar "lib": "es2015.promise" para ese error específico