Como resolver This class inherits from a class marked as @immutable, and therefore should be immutable

- Andrés Cruz

In english

La advertencia:

This class inherits from a class marked as @immutable, and therefore should be immutable 

Aparece sobre nuestras clases de tipo StatelessWidget o StatefullWidget en Dart con Flutter que no tienen sus propiedades definidas como final, es decir, que los valores deben de ser de tipo inmutable; la inmutabilidad es un tópico que manejamos nosotros los desarrolladores al momento de crear las aplicaciones pero es imprescindible manejarlo de la manera correcta por las siguientes razones:

  • La inmutabilidad es fundamental en la creación de aplicaciones robustas y predecibles.
  • La inmutabilidad es fundamental para garantizar la estabilidad y prevenir errores en el manejo del estado de la aplicación.

Una clase como la siguiente:

class MyApp extends StatelessWidget {
 UserPreference userPreference = UserPreference();
 MyApp({super.key});

La propiedad UserPreference debe ser final:

class MyApp extends StatelessWidget {
 final UserPreference userPreference = UserPreference();
 MyApp({super.key});

Con esto, desaparecerá el error anterior.

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.