Я создаю приложение для шоппинга, используя флаттер и пакет Provider для управления состоянием. Все работает очень хорошо, просто проблема. Я объявляю своих ChangeNotifierProviders следующим образом.
void main() {
runApp(MultiProvider(
providers: <SingleChildWidget>[
ChangeNotifierProvider(create: (_) => AuthStateManager.instance()),
ChangeNotifierProvider(create: (_) => CartManager()),
ChangeNotifierProvider(create: (_) => LocationManager()),
ChangeNotifierProvider(create: (_) => BottomNavigationManager()),
ChangeNotifierProvider(create: (_) => NotificationManager()),
],
child: EvendorApp(),
));
}
Все классы похожи.
class NotificationManager with ChangeNotifier {
NotificationManager() {
print("Notification manager created");
}
}
Теперь они работают нормально с точки зрения управления состоянием, но я хочу выполнить некоторый код на их конструкция, например, я хочу запустить код в их конструкторах, но AuthStateManager.instance()
, BottomNavigationManager()
и CartManager()
выполняют коды при запуске, но остальные LocationManager()
и NotificationManager()
не выполняют код, я не знаю почему это происходит? Я делаю то же самое для всех классов.