#flutter #dart
Вопрос:
Получение ошибки в MyApp
конструкторе
const MyApp({Key? key}) : super(key: key);
Для этого требуется, чтобы была включена функция языка, не допускающая значений null.
Попробуйте обновить pubspec.yaml, чтобы установить минимальное ограничение SDK на 2.12.0 или выше, и запустить «pub get».
но sdk по умолчанию уже установлен на 2.12.0
sdk: ">=2.12.0 <3.0.0"
Этот проект создан с использованием последних версий Flutter и Dart.
Версия для дротиков: 2.13.3
Версия флаттера: 2.2.2
Комментарии:
1. Попробуйте запустить «flutter clean», а затем перестроить.
2. возможно, ваша среда разработки использует более старую версию flutter
3. Переход к нулевой безопасности. Вот официальное руководство
4. @gegobyte У меня точно такая же проблема — вы когда-нибудь решали ее?
5. @reesas, я отключил нулевую безопасность. Это моя версия sdk в pubspec.yaml
sdk: ">=2.10.0 <3.0.0"
Ответ №1:
В моем случае мне пришлось установить значение 2.13.0, чтобы устранить ошибку:
sdk: ">=2.13.0 <3.0.0"
Ответ №2:
Несколько возможностей:
- Возможно, файл переопределил уровень языка. Вы можете установить конкретную языковую версию файла, поместив комментарий прямо вверху, например:
// @dart=2.9
. Это отключит нулевую безопасность для этого файла. Проверьте наличие такого комментария и удалите его, чтобы устранить ошибку - Аналогично, если точка входа в ваше приложение (обычно
lib/main.dart
) имеет переопределенный языковой уровень, это будет применено к проекту. Эта ошибка возникает при использованииflutter run
, но, как правило, не отображается в интегрированной среде разработки во время разработки - Ваша среда разработки может использовать версию flutter, отличную от версии, которую вы использовали для записи своих версий. Вы можете проверить местоположение вашей установки flutter (в системах, подобных Linux), запустив
which flutter
, чтобы узнать, где находитсяPATH
исполняемый файл. Затем вы можете сравнить это с версией, используемой в вашей среде разработки (зависит от среды разработки).
Комментарии:
1. Да, я проверил main.dart , и в самом верху была языковая версия dart
// @dart=2.9
, я удалил ее, но ничего не изменилось, все ошибки все еще там.
Ответ №3:
это связано с тем, что ваша среда разработки использует более старую версию flutter, поэтому попробуйте обновить flutter с помощью этой команды в вашем терминале
flutter upgrade
если возникнет проблема с кадрами, попробуйте очистить проект с помощью команды в терминале
flutter clean
если вы хотите проверить, правильно ли установлен flutter, вы можете проверить это, написав команду в своем терминале
flutter doctor
Комментарии:
1. В нем говорится, что Флаттер уже в курсе событий на стабильном канале. Уже запускались
flutter clean
несколько раз, но безрезультатно.