Для показа сообщений пользователю довольно часто используется SnackBar. До текущего момента, взаимодействие с ним осуществлялось через Scaffold с использованием BuildContext. У подобного подхода есть ряд недостатков, которые могут привести к ошибкам:



👉 SnackBar привязан к конкретному Scaffold, а значит будет скрыт при уходе с экрана;

👉 при обращении к SnackBar из асинхронной операции, мы можем получить ошибки, если Scaffold более не валиден и удален.



Данные проблемы призван решить ScaffoldMessenger, который можно получить из MaterialApp. Управление SnackBar теперь можно осуществлять с его помощью. Пока только в версиях Flutter 1.23.0-13.0.pre. Ждём в stable.



📌 Это breaking change. О том как осуществить миграцию читайте в документации Flutter.



#документация #breaking_changes