Cómo rechazar (reject) una promesa en sintaxis async/await en TypeScript
¡Hola a todos! Empecé a estudiar TypeScript y async/await, pero me encontré con un problema. En la documentación dice que una función async siempre devuelve una Promise. Cuando quiero completar exitosamente una promesa, simplemente devuelvo un valor. Pero, ¿cómo rechazar correctamente una promesa (reject) dentro de una función async?
Aquí hay un ejemplo que no funciona como esperaba:
```typescript
async function fetchUserData(userId: string): Promise {
if (!userId) {
// Quiero rechazar la promesa con un error aquí
return new Error('User ID is required'); // Esto está mal
}
const response = await fetch(`/api/users/${userId}`);
return response.json();
}
```
Intenté usar `throw new Error()`, pero me parece extraño, ya que throw normalmente es para excepciones, no para rechazar promesas. También vi en ejemplos antiguos el uso de `Promise.reject()`, pero no entiendo cómo combinarlo con async.
Por favor, indíquenme cuál es la forma correcta de rechazar una promesa en una función async. ¿Y cómo se?
No answers yet.
Inicia sesión para dejar una respuesta