• Jobs
  • About Us
  • Jobs
    • Home
    • Jobs
    • Courses and challenges
  • Businesses
    • Home
    • Post vacancy
    • Our process
    • Pricing
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Salary Calculator

0

114
Views
Loader hasta que las imágenes cargadas reaccionen

Tengo una tarea: hacer un precargador hasta que se carguen todas las imágenes. Así que usamos reaccionar, y soy nuevo en este marco, necesito ayuda porque no puedo hacer los pasos lógicos correctos. Tenemos App.js y este archivo no tiene ningún img a cambio de solo componentes, entonces, ¿cómo obtener información de las imágenes que han cargado? Sé sobre onLoad, pero no entiendo cómo obtener este bool de onLoad que está en componentes.

over 3 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Hay varias formas de hacer esto, pero la más simple es mostrar la imagen final oculta y luego voltearla para que sea visible una vez que se carga.

 class Foo extends React.Component { constructor(){ super(); this.state = {loaded: false}; } render(){ return ( <div> {this.state.loaded ? null : <div style={{ background: 'red', height: '400px', width: '400px', }} /> } <img style={this.state.loaded ? {} : {display: 'none'}} src={this.props.src} onLoad={() => this.setState({loaded: true})} /> </div> ); } }
over 3 years ago · Juan Pablo Isaza Report

0

Nunca he tenido que lidiar con esto, pero hay una manera (que podría ser un poco complicada).

Básicamente, puede usar un useEffect que está integrado en React. Esto se utiliza en los componentes funcionales. Esencialmente, ejecuta comandos después de que la página se haya montado. Lo que puede intentar es establecer inicialmente un estado booleano (por ejemplo: isLoading ) para que sea true y luego ejecutar un comando para establecer este estado en false en el gancho useEffect .

Ejemplo 👇

 function MyComponent(){ // Create an instance of react's useState hook const [isLoading, setIsLoading] = useState(true); // This will run after the page has mounted React.useEffect(() => { setIsLoading(false); }, [setIsLoading]); return{ //... } }
over 3 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 Our process Sales
Legal
Terms and conditions Privacy policy
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Show me some job opportunities
There's an error!