Описание тега dart-null-safety

Отметьте для вопросов, касающихся кода Dart с типами, не допускающими значения NULL. Его следует использовать только в сочетании с тегом Dart.
4 ответа

Повышение нулевого типа безопасности при назначении литерала ненулевого значения

В https://nullsafety.dartpad.dev/, если я напишу следующий код: void main() { String? name = 'Bob'; print(name.length); } Я получаю следующую ошибку времени компиляции: Выражение, значение которого может быть 'null', должно быть проверено на null, п…
22 авг '20 в 03:26
1 ответ

Как построить конструкторы Null Factory с нулевой безопасностью?

Обычный шаблон Dart до нулевой безопасности для создания классов-держателей статических методов был следующим: class MyMethodScope { /// Prevents instantiation of this class. factory MyMethodScope._() => null; static void noop() {} } Это невозмож…
24 июн '20 в 01:31
1 ответ

Flutter - NoSuchMethodError: метод получения isNotEmpty был вызван для нулевого значения

Это приложение мирового времени, которое начинается с главного экрана, показывающего местоположение по умолчанию в начале, затем вы можете изменить местоположение, и API покажет вам время в этом новом местоположении. Он работает нормально, но когда …
04 авг '20 в 15:24
2 ответа

Могут ли необязательные параметры в null-safe dart автоматически обнуляться? Если нет, есть ли простой способ сделать мой код нулевым?

Я заметил, что еще несколько пользователей тегов Dart/Flutter пробуют нулевую безопасность в новых версиях Dart SDK, и я начал читать об этом, начиная с этой статьи Medium. Я заметил, что во всех своих примерах они используют позиционные обязательны…
16 июл '20 в 04:24
1 ответ

Как отказаться от нулевой безопасности в Dart?

По состоянию на Дарт 2.12.0, по умолчанию включена нулевая безопасность. Раздел "Включение нулевой безопасности" на dart.dev заявляет следующее: Установите ограничения SDK, чтобы требовалась языковая версия с нулевой поддержкой безопасности. Наприме…
19 ноя '20 в 20:31
1 ответ

Могу ли я по-прежнему перенести текущий проект для поддержки нулевой безопасности, пока некоторые зависимости его еще не поддерживают?

Ждать, пока все зависимости не поддержат нулевую безопасность, займёт слишком много времени. Так что я думаю не ждать их. Интересно, могу ли я это сделать или должен.
26 ноя '20 в 06:39
2 ответа

Ошибка: библиотека не может отказаться от нулевой безопасности по умолчанию при использовании нулевой безопасности звука

При обновлении пакета Flutter для нулевой безопасности я получил эту ошибку при запуске flutter test: Error: A library can't opt out of null safety by default, when using sound null safety. // @dart = 2.8 ^^^^^^^^^^^^^^ Failed to load "/Users/x…
27 ноя '20 в 07:56
4 ответа

Проверка на нуль не вызывает продвижение типа в Dart

Я обновляю персональный пакет, основанный на фреймворке Flutter. Я заметил здесь, в исходном коде виджета Flutter Text, что есть проверка на null: if (textSpan != null) { properties.add(textSpan!.toDiagnosticsNode(name: 'textSpan', style: Diagnostic…
27 ноя '20 в 13:17
2 ответа

Чем "нулевая безопасность звука" Dart отличается от нулевой безопасности Kotlin?

В этом официальном видео Dart говорится, что так называемая "безопасность нулевого звука" Dart лучше, чем дизайн нулевой безопасности Kotlin, поскольку он может оптимизировать код в зависимости от того, объявлена ​​ли переменная допускающей значение…
3 ответа

Можно ли использовать late и final вместе?

Я пробую NNBD на данный момент и хотел бы знать, можете ли вы использовать новое ключевое слово late и final все вместе. Насколько я понял, lateСвойство можно установить где угодно. По сути, вы говорите анализатору, что он не будет нулевым при испол…
24 сен '20 в 04:26
1 ответ

Почему переменная, объявленная с помощью 'var', может быть нулевой в нулевом дротике?

Я копирую это из документации // In null-safe Dart, none of these can ever be null. var i = 42; // Inferred to be an int. String name = getFileName(); final b = Foo(); Но я запускаю приведенный ниже код в нулевом блокноте, и он компилируется. void m…
09 окт '20 в 17:13
7 ответов

Параметр не может иметь значение null из-за его типа в Dart.

Функция дротика У меня есть следующая функция Dart, и теперь я использую нулевую безопасность: void calculate({int factor}) { // ... } Анализатор жалуется, что: Параметр "фактор" не может иметь значение "ноль" из-за его типа, а значение по умолчанию…
27 окт '20 в 21:09
1 ответ

Как отладить ошибку типа значения по умолчанию Null Safety на двойном вопросительном знаке '??'

Недавно я столкнулся со странным поведением при использовании двойного вопросительного знака. Вот пример кода: void main() { String strA; String strB; print('start'); strB = strA ?? 5; // wrong use of default value type. It should be a String here. …
07 ноя '20 в 12:26
19 ответов

Невозможно работать со звуковой нулевой безопасностью, потому что зависимости не поддерживают нулевую безопасность

Я следил за "Включение нулевой безопасности" на dart.dev а также перевел все мое приложение Flutter на нулевую безопасность. Теперь я пытаюсь запустить его, используя flutter runОднако он не запустится из-за следующей ошибки: Error: Cannot run with …
19 ноя '20 в 21:23
1 ответ

null безопасно не включать во флаттер

Я пошел использовать нулевую безопасность во флаттере но есть ошибка и попробуйте исправить с помощью трепета предложения, но не исправлено ( environment: sdk: ">=2.10.0 <3.0.0" измените minSdk на 2.10.0, но все равно не работает) использовать…
02 дек '20 в 10:01
0 ответов

Невозможно запустить смешанную версию программы в бета-версии Flutter, несмотря на выполнение официальных инструкций.

У меня есть существующий проект, который я хочу развить в веб-приложение, поэтому я переключился на бета-канал flutter. И поскольку позже я также намерен провести рефакторинг своего кода для обеспечения нулевой безопасности, я начал обновлять стольк…
2 ответа

Интернационализация Flutter, генерация международного кода не работает

Я создал новый проект Flutter с Android Studio. Я использую нуль-безопасность , и я бег приложения на физическом устройстве , однако генерации коды не работают, нет flutter_gen папки внутри не .dart_tool папки просто flutter_build папки. Я выполнил …
1 ответ

Дротик | Flutter: как передать функцию из карты при нулевой безопасности? Зачем нужен оператор взрыва?

Фон: Я изучал, как передавать функции с помощью карты с помощью кода дротика. Однако сейчас я в тупике. Я получаю неожиданное нулевое значение из следующего кода при использовании DartPad при использовании нулевой безопасности: void main() { Map<…
16 фев '21 в 10:01
4 ответа

Как отсортировать список, который может содержать нулевые значения, с нулевой безопасностью dart

У меня есть список строк, которые могут содержать нулевые значения, как мне отсортировать этот список? Я использую бета-канал Flutter, поэтому проверена нулевая безопасность . Вот что у меня есть на данный момент: List<String?> _list = [ 'beta…
16 фев '21 в 19:16
5 ответов

Класс Singleton во флаттере с NullSafety

У меня есть этот класс, который принимает некоторые параметры с помощью конструктора фабрики, если instance имеет значение null, будет создан новый объект; если он не равен нулю, будет возвращено значение instance, поэтому мы всегда всегда получаем …
06 мар '21 в 23:12