#flutter #dart
Вопрос:
Карта? search = ModalRoute.of(контекст)?.настройки.аргументы как карта; так как он получит нулевое значение, но при его использовании я получаю ошибку. Я новичок в трепетании. Пожалуйста, кто-нибудь, помогите мне в решении этой проблемы.
***** From home page****** GestureDetector( onTap: () { Navigator.pushNamed(context, "/loading",arguments: { "searchText": searchController.text, }); *******from loading page********* Map? info = ModalRoute.of(context)!.settings.arguments as Map?; Map? search = ModalRoute.of(context)?.settings.arguments as Map; city=search['searchText']; if(search?.isEmpty??true) { city=search['searchText']; }
Ответ №1:
Map? search = ModalRoute.of(context)?.settings.arguments as Map;
эта строка должна быть
Map? search = ModalRoute.of(context)?.settings.arguments as Map?;
Обратите ?
внимание в конце… потенциально это может быть null, но вы пытаетесь привести его к ненулевому значению.