Я написал функцию dart, которая использует 9-уровневые вложенные массивы и объекты, которые будут генерироваться из нескольких файлов json.по сути, это приложение зала в одной функции, и оно не может быть разделено.когда пользователь нажимает кнопку, эта функция вызывается, но иногда, когда пользователь выбирает много информации для обработки, приложение полностью зависает (на физическом устройстве) или теряет соединение в эмуляторе без какого-либо конкретного сообщения об ошибке.
Я думал об «асинхронной функции», но не повезло, или я не сделал это так, как должен (пример прилагается).я также не могу получить бэкэнд для этого процесса.
извините, если мой вопрос неопределенный или не конкретный, при первом обращении сюда я могу предоставить дополнительную информацию, если это необходимо.
FutureBuilder(
future: myFunction(),
builder: (BuildContext context, AsyncSnapshot snapshot) {
if (snapshot.hasData) {
return gridViewFromJson(snapshot.data);
} else if (snapshot.hasError) {
print(snapshot.error);
print('error');
return null;
}
return new CircularProgressIndicator();
})
Future myFunction() async {
return await generateInfo();
}
//////////////
Future generateInfo() async {
/// processing here
return listOfDate;
}