#flutter #class #constructor #provider #stateless
#трепетать #класс #конструктор #поставщик #без гражданства
Вопрос:
Я хочу вызывать конструктор из класса каждый раз, когда я вхожу в приложение, в первый раз все в порядке, но в следующий раз не вызывается.
Я использую виджет без состояния и поставщика.
Элементы:
- простой класс с конструктором
class FetchDataFromTheWeb extends ChangeNotifier{ FetchDataFromTheWeb(){ loadingData(); } Future loadingData(){ // And more code } }
- Мой виджет без гражданства
class HomeScreen extends StatelessWidget { const HomeScreen({Key? key}) : super(key: key); final conferencesServices = Provider.oflt;FetchDataFromTheWebgt;(context); @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar(title: const Text('Hello')), body: ListWhitFetchedData() ); } }
Ситуация: Я вошел в приложение, и содержимое загружается методом в конструкторе, но если я выйду из системы и снова войду в систему с другой учетной записью, конструктор не вызывается, а ранее загруженные данные сохраняются для нового пользователя, и их необходимо загрузить вручную новым пользователем (и это не идея…).
Существует способ перезарядки или отзыва конструктора, когда я захочу?
Спасибо
Комментарии:
1. откуда вы звоните
FetchDataFromTheWeb ()
2. Это другой класс из другого файла. Этот конструктор-это просто пример
3. @JahidulIslam О, я просто вижу, что вы хотите сказать, где я называю метод, извините за это. Там, где создается виджет без состояния и создается экземпляр «conferencesServices» (я просто редактирую его в посте), вызывается метод внутри конструктора.
4.
final conferencesServices
эта строка вызывается в контексте сборки и не забудьте использоватьchangeNotifier
вloadingData()