* chore(i8n,learn): processed translations * Update curriculum/challenges/chinese/01-responsive-web-design/applied-visual-design/use-the-u-tag-to-underline-text.md Co-authored-by: Randell Dawson <5313213+RandellDawson@users.noreply.github.com> Co-authored-by: Crowdin Bot <support+bot@crowdin.com> Co-authored-by: Nicholas Carrigan (he/him) <nhcarrigan@gmail.com> Co-authored-by: Randell Dawson <5313213+RandellDawson@users.noreply.github.com>
		
			
				
	
	
		
			101 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			101 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
---
 | 
						|
id: 5cdafbe72913098997531682
 | 
						|
title: Maneja una promesa rechazada usando catch
 | 
						|
challengeType: 1
 | 
						|
forumTopicId: 301204
 | 
						|
dashedName: handle-a-rejected-promise-with-catch
 | 
						|
---
 | 
						|
 | 
						|
# --description--
 | 
						|
 | 
						|
`catch` es el método utilizado cuando tu promesa ha sido rechazada. Se ejecuta inmediatamente, después de que se llama al método `reject` de una promesa. A continuación la sintaxis:
 | 
						|
 | 
						|
```js
 | 
						|
myPromise.catch(error => {
 | 
						|
 | 
						|
});
 | 
						|
```
 | 
						|
 | 
						|
`error` es el argumento pasado al método `reject`.
 | 
						|
 | 
						|
# --instructions--
 | 
						|
 | 
						|
Añade el método `catch` a tu promesa. Usa `error` como el parámetro de tu función callback e imprime `error` en la consola.
 | 
						|
 | 
						|
# --hints--
 | 
						|
 | 
						|
Debes llamar al método `catch` en la promesa.
 | 
						|
 | 
						|
```js
 | 
						|
assert(
 | 
						|
  __helpers.removeWhiteSpace(code).match(/(makeServerRequest|\))\.catch\(/g)
 | 
						|
);
 | 
						|
```
 | 
						|
 | 
						|
El método `catch`, debe tener una función callback con `error` como parámetro.
 | 
						|
 | 
						|
```js
 | 
						|
assert(errorIsParameter);
 | 
						|
```
 | 
						|
 | 
						|
Debes imprimir `error` en la consola.
 | 
						|
 | 
						|
```js
 | 
						|
assert(
 | 
						|
  errorIsParameter &&
 | 
						|
    __helpers
 | 
						|
      .removeWhiteSpace(code)
 | 
						|
      .match(/\.catch\(.*?error.*?console.log\(error\).*?\)/)
 | 
						|
);
 | 
						|
```
 | 
						|
 | 
						|
# --seed--
 | 
						|
 | 
						|
## --after-user-code--
 | 
						|
 | 
						|
```js
 | 
						|
const errorIsParameter = /\.catch\((function\(error\){|error|\(error\)=>)/.test(__helpers.removeWhiteSpace(code));
 | 
						|
```
 | 
						|
 | 
						|
## --seed-contents--
 | 
						|
 | 
						|
```js
 | 
						|
const makeServerRequest = new Promise((resolve, reject) => {
 | 
						|
  // responseFromServer is set to false to represent an unsuccessful response from a server
 | 
						|
  let responseFromServer = false;
 | 
						|
 | 
						|
  if(responseFromServer) {
 | 
						|
    resolve("We got the data");
 | 
						|
  } else {  
 | 
						|
    reject("Data not received");
 | 
						|
  }
 | 
						|
});
 | 
						|
 | 
						|
makeServerRequest.then(result => {
 | 
						|
  console.log(result);
 | 
						|
});
 | 
						|
```
 | 
						|
 | 
						|
# --solutions--
 | 
						|
 | 
						|
```js
 | 
						|
const makeServerRequest = new Promise((resolve, reject) => {
 | 
						|
  // responseFromServer is set to false to represent an unsuccessful response from a server
 | 
						|
  let responseFromServer = false;
 | 
						|
 | 
						|
  if(responseFromServer) {
 | 
						|
    resolve("We got the data");
 | 
						|
  } else {  
 | 
						|
    reject("Data not received");
 | 
						|
  }
 | 
						|
});
 | 
						|
 | 
						|
makeServerRequest.then(result => {
 | 
						|
  console.log(result);
 | 
						|
});
 | 
						|
 | 
						|
makeServerRequest.catch(error => {
 | 
						|
  console.log(error);
 | 
						|
});
 | 
						|
```
 |