Flutter 3.0 показывает ошибку: WidgetsBinding.instance!.addPostFrameCallback((_) => widget.onReady.call());

После обновления проекта во флаттере 3.0 появляется следующая ошибка.

          Syncing files to device iPhone 13 Pro Max...
../../../Developer/flutter/.pub-cache/hosted/pub.dartlang.org/another_transformer_page_view-1.1.0/lib/src/another_transformer_page_view.dart:519:22: Warning: Operand of null-aware operation '!' has type 'WidgetsBinding' which excludes null.
 - 'WidgetsBinding' is from 'package:flutter/src/widgets/binding.dart' ('../../../Developer/flutter/packages/flutter/lib/src/widgets/binding.dart').
      WidgetsBinding.instance!.addPostFrameCallback(_onGetSize);
                     ^
../../../Developer/flutter/.pub-cache/hosted/pub.dartlang.org/another_transformer_page_view-1.1.0/lib/src/another_transformer_page_view.dart:537:22: Warning: Operand of null-aware operation '!' has type 'WidgetsBinding' which excludes null.
 - 'WidgetsBinding' is from 'package:flutter/src/widgets/binding.dart' ('../../../Developer/flutter/packages/flutter/lib/src/widgets/binding.dart').
      WidgetsBinding.instance!.addPostFrameCallback(_onGetSize);
                     ^
../../../Developer/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_login-3.2.0/lib/src/widgets/animated_text.dart:57:20: Warning: Operand of null-aware operation '!' has type 'WidgetsBinding' which excludes null.
 - 'WidgetsBinding' is from 'package:flutter/src/widgets/binding.dart' ('../../../Developer/flutter/packages/flutter/lib/src/widgets/binding.dart').
    WidgetsBinding.instance!.addPostFrameCallback((_) {
                   ^
../../../Developer/flutter/.pub-cache/hosted/pub.dartlang.org/awesome_select-5.2.0/lib/src/widget.dart:1547:58: Warning: Operand of null-aware operation '!' has type 'WidgetsBinding' which excludes null.
 - 'WidgetsBinding' is from 'package:flutter/src/widgets/binding.dart' ('../../../Developer/flutter/packages/flutter/lib/src/widgets/binding.dart').
                MediaQueryData.fromWindow(WidgetsBinding.instance!.window);
                                                         ^
../../../Developer/flutter/.pub-cache/hosted/pub.dartlang.org/awesome_select-5.2.0/lib/src/text_error.dart:99:20: Warning: Operand of null-aware operation '!' has type 'WidgetsBinding' which excludes null.
 - 'WidgetsBinding' is from 'package:flutter/src/widgets/binding.dart' ('../../../Developer/flutter/packages/flutter/lib/src/widgets/binding.dart').
    WidgetsBinding.instance!.addPostFrameCallback((_) {

это баг от флаттера? Может ли кто-нибудь сообщить об этом флаттеру. я не знаю, чтобы сообщить об этом команде флаттера.

Эта ошибка с предупреждением устранена.см. мой комментарий в правильном ответе, который я написал (если вы являетесь пользователем Mac goto finder -> нажмите кнопку перехода с помощью swift+cmd+G -> пройдите все 6 файлов, которые я упомянул, или вы обнаружите ошибку и замените [root-name] с именем вашего корневого каталога.

1 ответ

Геттер WidgetsBinding.instance раньше был типом, допускающим значение NULL. В новом обновлении он изменен на Non-nullable. Итак, теперь старые пакеты показывают это после обновления, потому что они использовали там оператор с нулевым значением. В новых версиях будет исправлено. На данный момент вы можете просто удалить оператор с нулевым значением из строк, которые отображаются в журналах, и после перестроения предупреждений больше не будет.

Другие вопросы по тегам