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

198
Views
Cómo dejar de recargar la pantalla cuando vuelves a la pantalla anterior con dom-router en react js

Tengo una aplicación web con varias páginas y enrutamiento, en cada página tengo una tabla con muchos datos, por lo que cada vez que cambio de página y presiono el botón Atrás, la página del historial se recarga sola.

Quiero mantener los datos de ListingPage tal como están cuando vuelvo a ListingPage desde DetailPage. Pero cada vez que llama a la función getAllRecords y vuelve a cargar la tabla.

Intenté cambiar las opciones y los componentes de dom pero aún no obtuve una solución adecuada

La estructura de la página de mi aplicación es similar a la siguiente

Aplicación.js

 import { BrowserRouter, Route, Switch } from 'react-router-dom'; import HomePage from './Pages/HomePage.js' import ListingPage from './Pages/ListingPage.js' import DetailPage from './Pages/DetailPage.js' render() { return ( <BrowserRouter> <Switch> <Route path="/home" component={HomePage} /> <Route path="/list" component={ListingPage} /> <Route path="/detail" component={DetailPage} /> </Switch> </BrowserRouter> ) }

Página de inicio.js

 import React, { Component } from 'react'; class HomePage extends Component { render() { return ( <div> //Showing list of different table and pages </div> ); } } export default HomePage;

ListingPage.js

 import React, { Component } from 'react'; class ListingPage extends Component { componentDidMount(){ this.getAllRecords() } getAllRecords = () => {} goToDetailRecord = () => { this.props.history.push('detail') } render() { return ( <div> //Table list data </div> ); } } export default ListingPage;

DetailPage.js

 import React, { Component } from 'react'; class DetailPage extends Component { goBack = () => { this.props.history.goBack(); } render() { return ( <div> //Shows table data detail value </div> ); } } export default DetailPage;

¿Hay algo que pueda implementar para resolver el problema? Gracias por adelantado.

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

0

Puede usar Memo o la versión React 16 y anterior para almacenar un caché para evitar que lo haga en los renderizados o guardar el valor en el estado usando redux y no llamar a la función si el campo no está vacío. Además, si el componente se montó funciona como useEffect, creo que al tenerlo allí, llamará a esa función en cada renderizado.

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!