¿Cómo actualizar la página anterior al usar el botón de retroceso en Flutter?

- Andrés Cruz

In english
 ¿Cómo actualizar la página anterior al usar el botón de retroceso en Flutter?

Cuando trabajamos con operaciones tipo CRUD en cualquier lenguaje de programación, framework, etc, cuando estamos en la fase de creación o actualización generalmente al terminar este proceso volvemos de una de manera automática a la página de listado, en la cual deben de verse reflejados los cambios reflejados en los procesos de inserción o actualización de estos registros; para estos casos, cuando estamos trabajando en Flutter puede que no quede del todo claro cómo podemos hacer esta actualización de la vista de listado; ya no estamos hablando de disparar una función al momento de presionar el botón de atrás, ya que esto afectaría solamente a la página actual antes de hacer el back.

Navegación en Flutter

Recordemos que, cuando queremos ir de una página a otra, tenemos que emplear un componente de navegación que nos tiene gracias una clase llamada Navigator en Flutter; lo que puede que no quede tan claro es que esta misma navegación nos funciona al momento de de hacer el back para ejecutar el código que nosotros queremos ejecutar al momento de regresar a la página inicial, que en nuestro ejemplo sería la de listado; podemos interceptar cuando hacemos un ruteo con la clase de Navigator mediante la función de then, que es una función de promesa:

ListTile(
          title: Text(notes[i].title),
          trailing: MaterialButton(
            onPressed: () => Navigator.pushNamed(context, SavePage.ROUTE,
                    arguments: notes[i])
                .then((value) => setState(() {
                      _loadData();
                    })),
            child: Icon(Icons.edit),
          )),

Por lo tanto en nuestro ejemplo, tenemos una función para recargar la data, que es la misma que empleamos para cargar la data de manera inicial.

Andrés Cruz

Desarrollo con Laravel, Django, Flask, CodeIgniter, HTML5, CSS3, MySQL, JavaScript, Vue, Android, iOS, Flutter

Andrés Cruz En Udemy

Acepto recibir anuncios de interes sobre este Blog.