Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

180
Views
¿Cómo puedo llamar a la función de un componente principal dentro de un componente secundario?

En primer lugar, soy más nuevo en reaccionar, así que siéntase libre de criticar cualquier tipo de problema arquitectónico que tenga, siento que hay una mejor manera de escribir esto, pero he estado luchando durante una hora tratando de hacerlo funcionar.

Elemento principal (TileGrid):

 import React, { Component } from 'react' import Tile from './Tile.js'; export default class TileGrid extends Component { constructor(props) { super(props); } updateTileData(value) { {/* Do something with value here */} } render() { this.test() return ( {/* The Tile component is a custom button with some richer features. */} <Tile name='Dog' image='dog' /> ) } }

Elemento secundario (mosaico):

 import React from 'react'; import ButtonBase from '@mui/material/ButtonBase'; import './styles/Tile.css'; function Tile(props) { return( <div className="Tile"> <ButtonBase onClick={/* This is where the Tile needs to call updateTileData in TileGrid */}> Button </ButtonBase> </div> ); } export default Tile;

Entonces, hay una función dentro de TileGrid llamada updateTileData que tomará algunos datos y los usará para actualizar el estado de TileGrid. El componente Tile existe como elemento secundario dentro del componente TileGrid. He intentado todo tipo de cosas aquí, pero parece una tarea sencilla, ¿hay una mejor manera de escribir esta funcionalidad? No estoy atado a nada en el código, por favor dígame si hay una mejor manera de hacer esto. Todavía estoy aprendiendo este marco y este problema me tiene colgado. Gracias, arquero.

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

pase la función de padre a hijo como un ejemplo de utilería:

 <Child func={this.functionInParent} /> props.func() //called inside child
about 4 years ago · Juan Pablo Isaza Report

0

necesita pasar un accesorio al elemento secundario y llamarlo.

 import React, { Component } from 'react' import Tile from './Tile.js'; export default class TileGrid extends Component { updateTileData(value) { {/* Do something with value here */} } render() { this.test() return ( {/* The Tile component is a custom button with some richer features. */} <Tile name='Dog' image='dog' setValue={this.updateTileData} /> ) } }

elemento hijo:

 import React from 'react'; import ButtonBase from '@mui/material/ButtonBase'; import './styles/Tile.css'; function Tile(props) { return( <div className="Tile"> <ButtonBase onClick={()=>props.setValue("your value")}> Button </ButtonBase> </div> ); } export default Tile;
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!