¿Cómo acceder al objeto anidado en ReactJS?

La estructura de un objeto en ReactJS se puede anidar muchas veces y puede complicarse rápidamente. Si queremos acceder a todos los valores de los objetos anidados, debemos usar la recursividad para acceder a todos y cada uno de los niveles de ese objeto.

Ejemplo de un objeto anidado:

 var person = {
      "name":"Kapil",
      "age":27,
      "vehicles": {
         "car":"city 100",
         "bike":"ktm-duke",
         "plane":"lufthansa"
      }
     }

Y puede volverse más complicado según el anidamiento del objeto. Es por eso que tenemos que usar la recursividad para obtener todos los valores y acceder a todo el objeto anidado.

Creando la aplicación React:

  • Paso 1: Cree una aplicación React usando el siguiente comando:

    npx create-react-app foldername
  • Paso 2: después de crear la carpeta de su proyecto, es decir, el nombre de la carpeta, acceda a ella con el siguiente comando:

    cd foldername

Estructura del proyecto: Tendrá el siguiente aspecto.

Ejemplo: ahora escriba el siguiente código en el archivo App.js. Aquí, la aplicación es nuestro componente predeterminado donde hemos escrito nuestro código.

App.js

import React from 'react';
  
class App extends React.Component {
  
  constructor(props) {
    super(props);
    this.state = {
      person: {
        name: {
          first: "Kapil",
          last: "Chhipa"
        },
        age: 23,
        key1: {
          key2: {
            key3: {
              val: "Welcome to GeeksforGeeks"
            }
          }
        }
      }
    };
  }
  
  helper = (obj) => {
    const values = Object.values(obj)
  
    values.forEach(val =>
      val && typeof val === "object" ? 
      this.helper(val) : this.addtoConsole(val))
  }
  
  addtoConsole = (val) => {
    console.log(val)
  }
  
  render() {
    return (
      <div>
        <button onClick={() => {
          this.helper(this.state.person)
        }}>click here</button>
      </div>
    );
  }
}
  
export default App;

Paso para ejecutar la aplicación: ejecute la aplicación utilizando el siguiente comando desde el directorio raíz del proyecto:

npm start

Salida: Ahora abra su navegador y vaya a http://localhost:3000/ , verá la siguiente salida:

Publicación traducida automáticamente

Artículo escrito por kapilm180265ca y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *