在 2.7.0 之前的 sdk 版本中,是不是需要 Flutter 来保证 null 安全性?

Posted

技术标签:

【中文标题】在 2.7.0 之前的 sdk 版本中,是不是需要 Flutter 来保证 null 安全性?【英文标题】:Is that Flutter need required and late for null safety in sdk version up to 2.7.0?在 2.7.0 之前的 sdk 版本中,是否需要 Flutter 来保证 null 安全性? 【发布时间】:2021-10-01 04:55:53 【问题描述】:

在下面的代码中,该代码出现laterequired在flutter 2.7.0版本中不可用的错误。

  late CameraController _controller;
  late Future<void> _initializeControllerFuture;  

...

  const DisplayPictureScreen(Key? key, required this.imagePath)
      : super(key: key);

所以,我就这样把flutter版本升级到了2.1.2,马上就解决了这个问题。

environment:
  sdk: ">=2.12.0 <3.0.0"

Flutter 是否需要其他定义而不是 requiredlate 在 2.7.0 以下的 sdk 版本中实现 null 安全?

如果是,我如何在 2.7.0 的 sdk 版本中更改定义 requiredlate

【问题讨论】:

【参考方案1】:

这个视频“Dart null-safety 以及它如何影响 Flutter”,会让事情变得非常清楚。

我看过了,现在我明白了 Dart 空安全性如何影响 Flutter。

https://www.youtube.com/watch?v=TH5tRjXCL14

【讨论】:

【参考方案2】:

将您的代码更改为:

  final CameraController _controller;
  final Future<void> _initializeControllerFuture;  

...

  const DisplayPictureScreen(Key key, @required this.imagePath)
      : super(key: key);

【讨论】:

以上是关于在 2.7.0 之前的 sdk 版本中,是不是需要 Flutter 来保证 null 安全性?的主要内容,如果未能解决你的问题,请参考以下文章

“如何在我的项目中匹配 typescript 版本,因为它显示错误“需要 typescript@>=2.7.0 <2.8.0”

怎么玩sdk低的安卓游戏

Facebook在2014年12月25日之前升级到v2.0,如果使用FB Unity SDK需要这个吗?

我应该在 iOS 5 中使用哪个 FB SDK 版本?

.net core 版本支持

Dubbo2.6.5入门——管控台的安装