Я работал над приложением для сферы услуг, которое позволяет пользователю бронировать номера в отеле, заказывать еду и т. Д. c. онлайн. После того, как пользователь выбрал комнаты, которые он хочет забронировать, и даты для этого, ему необходимо произвести оплату (используя интернет-банк и т. Д.). Прямо сейчас я использую виртуальный симулятор RazorPay для оплаты. новая страница. На новой странице у меня есть код для обновления всех выбранных комнат, чтобы они были «Недоступными» в Firebase. Вот код:
Widget _updateRoomStatus() {
return ScopedModelDescendant<MainModel>(
builder: (BuildContext context, Widget child, MainModel model){
Widget content = Center(child: Text("Processing"));
List<int> roomIndex = widget.model.productsRoomIds;
//Retrieves the List of rooms that the user has just booked - **Position X**
roomIndex.forEach((element) => (){ //**Position Y**
widget.model.updateRoom(element, false)
});
//updateRoom function updates the passed parameter in the Firebase and
//false means unavailable
if (!model.isHouseLoading) //Position Z
content = Center(child: Text('Payement Done'));
else
content = Center(child: CircularProgressIndicator());
return content;
});
}
`
Странно то, что компилятор достигает позиции x, полностью пропускает Y l oop, затем выполняет z и после этого. Показана ошибка только в этой строке: уже есть отложенное событие vsyn c. Только по одному.
И проблема не в функции updateRoom. Компилятор даже не вводит l oop. Я искал везде, не нашел решения. За любую помощь буду благодарен.