如何在 Flutter 中默认使用不可为空?

cre*_*not 8 dart flutter

我今天想在我的 Flutter 应用程序中使用NNBD Dart 功能,但我不知道如何使用它。

如果我尝试使用int?et al.,我会收到以下错误:

This requires the 'non-nullable' experiment to be enabled.
Run Code Online (Sandbox Code Playgroud)

cre*_*not 20

使用颤振 2

从 Flutter 2(和 Dart 2.12)开始,空安全是新的默认值。这意味着通过指定以下 SDK 约束:

environment:
  sdk: '>=2.12.0 <3.0.0'
Run Code Online (Sandbox Code Playgroud)

您会自动选择空安全。

预颤振 2

您需要确保您的 Dart SDK 版本约束2.9.0在您的pubspec.yaml文件中(使用flutter channel master):

environment:
  sdk: '>=2.12.0 <3.0.0'
Run Code Online (Sandbox Code Playgroud)

现在,您可以在analysis_options.yaml文件旁边添加一个pubspec.yaml文件:

environment:
  sdk: ">=2.9.0-8.0 <3.0.0"
Run Code Online (Sandbox Code Playgroud)

到目前为止,您不应期望编译会成功。