freeCodeCamp/curriculum/challenges/spanish/03-front-end-libraries/react-and-redux/map-state-to-props.spanish.md

59 lines
2.8 KiB
Markdown
Raw Normal View History

2018-10-08 17:34:43 +00:00
---
id: 5a24c314108439a4d4036145
title: Map State to Props
challengeType: 6
isRequired: false
2018-10-10 20:20:40 +00:00
videoUrl: ''
localeTitle: Mapa del estado a los apoyos
2018-10-08 17:34:43 +00:00
---
## Description
2018-10-10 20:20:40 +00:00
<section id="description"> El componente <code>Provider</code> permite proporcionar <code>state</code> y <code>dispatch</code> a sus componentes React, pero debe especificar exactamente qué estado y acciones desea. De esta manera, se asegura de que cada componente solo tenga acceso al estado que necesita. Esto se logra creando dos funciones: <code>mapStateToProps()</code> y <code>mapDispatchToProps()</code> . En estas funciones, declara a qué estados de estado desea acceder y a qué creadores de acción necesita poder enviar. Una vez que estas funciones estén en su lugar, verá cómo utilizar el método React Redux <code>connect</code> para conectarlos a sus componentes en otro desafío. <strong>Nota:</strong> Detrás de escena, React Redux usa el método <code>store.subscribe()</code> para implementar <code>mapStateToProps()</code> . </section>
2018-10-08 17:34:43 +00:00
## Instructions
2018-10-10 20:20:40 +00:00
<section id="instructions"> Crear una función <code>mapStateToProps()</code> . Esta función debe tomar el <code>state</code> como un argumento, luego devolver un objeto que mapea ese estado a nombres de propiedad específicos. Estas propiedades serán accesibles a su componente a través de <code>props</code> . Como este ejemplo mantiene todo el estado de la aplicación en una sola matriz, puede pasar ese estado completo a su componente. Cree un <code>messages</code> propiedad en el objeto que se está devolviendo y configúrelo en <code>state</code> . </section>
2018-10-08 17:34:43 +00:00
## Tests
<section id='tests'>
```yml
tests:
- text: El <code>state</code> constante debe ser una matriz vacía.
testString: 'assert(Array.isArray(state) && state.length === 0, "The const <code>state</code> should be an empty array.");'
- text: <code>mapStateToProps</code> debería ser una función.
testString: 'assert(typeof mapStateToProps === "function", "<code>mapStateToProps</code> should be a function.");'
- text: <code>mapStateToProps</code> debe devolver un objeto.
testString: 'assert(typeof mapStateToProps() === "object", "<code>mapStateToProps</code> should return an object.");'
- text: Pasar una matriz como estado a <code>mapStateToProps</code> debería devolver esta matriz asignada a una clave de <code>messages</code> .
testString: 'assert(mapStateToProps(["messages"]).messages.pop() === "messages", "Passing an array as state to <code>mapStateToProps</code> should return this array assigned to a key of <code>messages</code>.");'
```
</section>
## Challenge Seed
<section id='challengeSeed'>
<div id='jsx-seed'>
```jsx
const state = [];
// change code below this line
```
</div>
</section>
## Solution
<section id='solution'>
```js
2018-10-10 20:20:40 +00:00
// solution required
2018-10-08 17:34:43 +00:00
```
</section>