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. Итак, теперь старые пакеты показывают это после обновления, потому что они использовали там оператор с нулевым значением. В новых версиях будет исправлено. На данный момент вы можете просто удалить оператор с нулевым значением из строк, которые отображаются в журналах, и после перестроения предупреждений больше не будет.