Было выдано еще одно исключение: ожидалось значение типа «PopupMenuItem<dynamic>», но получено значение типа «Null».

Мой код заключается в создании динамического PopupMenu:

      PopupMenuButton(
                    itemBuilder: (context) =>
                    classifications.map((classificationData) {

                        return (condition)? PopupMenuItem(
                                             child: PointerInterceptor(
                                                   child: menuBuild(
                                                              classificationData)), )
                                              :
                                              // ignore: cast_from_null_always_fails
                                              null as PopupMenuItem;
                                        }).toList(),
                                      )

Я получаю эту ошибку в последнем обновлении флаттера:

Было выдано еще одно исключение: ожидалось значение типа PopupMenuItem, но получено значение типа Null.

Раньше я использовал flutter run --no-sound-null-safety для запуска проекта. Но сейчас им нельзя пользоваться.

1 ответ

      List<String> classifications  = ["1","2","3","4"];
      PopupMenuButton(
     itemBuilder: (context) => classifications
         .where((element) => element == "2") //Condition
         .map((item) => PopupMenuItem(
               child: Text(item),
             ))
         .toList(),
   )
Другие вопросы по тегам