如何使用 Flutter null 安全性处理生成的代码?

Posted

技术标签:

【中文标题】如何使用 Flutter null 安全性处理生成的代码?【英文标题】:How to handle generated code with Flutter null safety? 【发布时间】:2021-03-17 22:00:13 【问题描述】:

我正在使用颤振改造包 (https://pub.dev/packages/retrofit),但他们还没有空安全版本。当我运行构建并且生成的代码没有空检查时。如果不手动将“// @dart=2.9”添加到每个生成的文件,我怎么能解决这个问题?

【问题讨论】:

【参考方案1】:

如果您包含的代码还不是 null 安全的,您需要为整个项目禁用 null 安全,并通知包作者您正在等待。 :)

【讨论】:

Tks,那我需要切换到稳定版 不,您可以在任何频道...您只需要正确的环境 sdk 范围。见dart.dev/null-safety#enable-null-safety【参考方案2】:

作为docs 提及:

等待你依赖的包迁移。

运行此命令以检查您的所有软件包是否已准备好迁移。尽管现在大多数包都是空安全的。

dart pub outdated --mode=null-safety

如果您还没有准备好,请将较低的 Dart SDK 约束设置为 2.9,例如,在您的 pubspec.yaml 文件中:

environment:
  sdk: '>=2.9.0 <3.0.0'

【讨论】:

以上是关于如何使用 Flutter null 安全性处理生成的代码?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用具有 Null 安全性的 FlutterFire Firestore 和 Flutter 2.0 从 Firebase 获取数据

Flutter Firebase 数据库,DataSnapshot?如何获取值和键,null 安全

Flutter 使用合理的 null 安全性将多级 JSON 解析为类

如何通过使用flutter bloc从fire存储中使用依赖注入来处理错误`The getter was called on null`

Hive/Flutter 错误:在 null 上调用了“registerAdapter”

如何在 Flutter 中启用 Null-Safety?