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

160
Views
¿Hay alguna manera de preservar el estado DOM del componente después de navegar y regresar en Angular?

Después de investigar el problema durante unos días, parece que he llegado a un callejón sin salida.

Estoy lidiando con lo que asumí, era un escenario bastante común: después de que el usuario navega a una página determinada y realiza algunos cambios (contenido de un campo de entrada, desplazarse por los datos de la cuadrícula o incluso cambiar algunos valores de celda editables), navega a pagina diferente Cuando el usuario regresa a la página original, todos los cambios deben permanecer igual.

Ahora, eso significa que el cursor en el campo de entrada antes mencionado debe estar en el mismo lugar, la posición de desplazamiento en la cuadrícula y los valores de celda modificados, así como cualquier otro cambio realizado por el usuario, deben conservarse.

Las soluciones como el almacenamiento de datos en localStorage, el uso de servicios o incluso la estrategia de reutilización personalizada no funcionarán, porque será imposible guardar esa cantidad de información contenida en múltiples subcomponentes.

Actualmente, estoy considerando la manipulación de DOM, donde la plantilla procesada se moverá a un contenedor en el componente principal en el enlace onDestroy y se devolverá más tarde en onInit . Eso, por supuesto, es un intento de avemaría y se siente muy poco natural.

Espero que alguien haya tenido (y resuelto) este problema antes porque, como mencioné, parece un patrón de uso bastante común.

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

0

No hay muchas opciones para hacer esto en angular en comparación con React,

Lo que puedo recomendarle es que almacene todos los datos en el "entorno" como objeto y cuando el usuario vuelva a enrutar los datos del entorno.

Por lo general, hago esto, cuando se carga un componente, almaceno valores en objetos. Cuando se llama a la destrucción, todos estos objetos van al entorno bajo un objeto principal.

Cuando oninit llama, verifico si el objeto tiene valores y restauro la página a donde estaba.

about 4 years ago · Juan Pablo Isaza Report

0

Creo que está buscando Angular RouteReuseStrategy, donde Angular puede almacenar en caché el estado de algunas rutas, sin destruir el estado del componente, por lo que cada vez que el usuario visite la misma ruta, se usará una vista en caché, RouteReuseStrategy Docs .

También puedes consultar este artículo medio, implementando los métodos requeridos Medio

about 4 years ago · Juan Pablo Isaza Report

0

para una pequeña cantidad de datos podemos usar servicios o almacenamiento local como mencionaste para una gran cantidad de datos con los que podemos ir

NgRx

https://dzone.com/articles/angular-app-state-management-with-ngrx

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!