应为 'SkDeletable' 类型的值,但得到了 'Null' 类型的值

Expected a value of type 'SkDeletable', but got one of type 'Null'

我已经将我的 flutter 项目从 1.26.3 更新到 2.1.0。从那以后我面临一些问题。我收到错误消息“应为 'SkDeletable' 类型的值,但得到的是 'Null' 类型的值”。

有谁知道什么是相关的吗?

这很可能与您可能正在使用的 flushbar 库有关,请尝试使用 another_flushbar,因为它已经解决了这个问题并且具有相同的 api。

这是 flutter 的一个 bug,已经在这个 issue 中报告了。

https://github.com/flutter/flutter/issues/77258

我做了"flutter pub upgrade"后就解决了。 升级 pub 后所有依赖错误都得到解决。

如果您运行您的项目正在发布或配置文件中,错误可能不会存在:

flutter run -d chrome --profile
flutter run -d chrome --release

同时,如果您获取 --debug 应用程序并在 Safari 中打开它(例如),错误将不存在(很可能)。 Chrome(再次)似乎是一个问题。

我在以下代码片段中遇到了同样的错误:

BackdropFilter(
        filter: ImageFilter.blur(
        
          sigmaX: animation.value * 5.0),
          sigmaY: animation.value * 5.0),
        ),
        child: Container(
          color: Colors.transparent,
        ),
      ),

错误被抛出是因为动画从 0 变为 1。更准确地说,ImageFilter 不适用于等于零的值。 一个快速的解决方法是这样的:

max(0.001, animation.value * 5.0)

因此没有零值传递给过滤器。

我在终端运行解决了以下命令

  • flutter clean
  • flutter pub get
  • flutter run 我希望它能解决您的问题