У меня есть простая асинхронная функция, и я вызываю эту функцию в своем initState. Эта функция читает мою базу данных Firebase Firestore, и я хочу, чтобы количество чтений было как можно меньше. Но при использовании BottomNavigationBar и навигации с помощью body: _widgetOptions.elementAt(index) экран удаляется при каждом переходе на новый экран. Когда я возвращаюсь к исходному экрану, initState снова вызывается, и мои данные снова загружаются, хотя это не то, что мне нужно или нужно.
У кого-нибудь есть решение или советы?
Заранее спасибо!
Вы можете установить глобальную логическую переменную в вашем провайдере. Допустим, isCalled
имеет значение по умолчанию false
. Затем вы можете проверить, является ли isCalled
false
, прежде чем вызывать свой метод. И затем вы можете установить его true после вызова вашего метода.
Я делаю много сложных функций, но не мог придумать ничего подобного... лол, большое спасибо!