问题标签 [dart-null-safety]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1588 浏览

flutter - 使用颤振 2.0.0 构建旧项目的问题

升级到颤振 2.0.0 后,我无法再构建应用程序了。这是输出。我的问题是我大量使用库,其中很多库不是空安全的,我无法将所有依赖项升级到空安全模式。有人对此有什么建议吗?

更新 1:更新到 Flutter 2.0.1flutter pub cache repairflutter clean. 并与 flag 一起运行flutter run --no-sound-null-safety。尽管如此,还是没有机会运行该应用程序,这就是输出。

更新 2:这是一个输出flutter doctor

0 投票
1 回答
26838 浏览

flutter - 如何解决“无法无条件调用运算符'{0}',因为接收者可以为'null'”

在尝试DartSound Null Safety时,我遇到了一个问题:


一些背景

创建一个新的Flutter项目我发现了以下(并且非常熟悉的)片段代码

现在,我将变量更改为_counter可为并取消初始化:

正如预期的那样,我在编辑器中收到以下错误:

不能无条件调用运算符“+”,因为接收者可以为“null”

问题

文档之后,我添加了所需的检查:

但令我惊讶的是,错误不断显示和提示

尝试使调用有条件(使用'?'或向目标添加空检查('!'))

即使我明确地有条件地拨打电话......那有什么问题?

0 投票
1 回答
2320 浏览

flutter - Flutter 2:Intl null 安全库中的问题

我将颤振 sdk 升级到颤振 2.0.0。更新 sdk 后,我已将几乎所有库更改为空安全版本:

更新后我运行 dart$ dart migrate命令。但它显示了有关 intl 插件的这些问题:

在此处输入图像描述

在此处输入图像描述

我正在使用最新版本的 intl ?我该如何解决?

0 投票
1 回答
70 浏览

dart - Dart Null 安全/断言运算符

我是飞镖的新手。我正在计算披萨订单的价格。在我当前的解决方案中,我使用的是断言运算符。你怎么看待这件事?

我读过很多次你不应该使用它。你认为我的代码没问题,还是你会做一些更好/不同的事情?

0 投票
6 回答
16105 浏览

flutter - 生成器无法定位尚未迁移到空安全的库

尝试以下命令时会出现此问题:

flutter pub run build_runner build --delete-conflicting-outputs

错误信息:

pubspec.yaml:

这些是当前的颤振和飞镖版本:

我卡在这一点上,如何解决这个问题。

0 投票
1 回答
2277 浏览

flutter - 如何在 Dart 的 Sound Null Safety 中增加/减少可为空的表达式:`!++`?

我在Dart中使用Sound Null Safety,我有以下代码

现在,由于 _counter 不是局部变量,它不能被提升(参见这个其他线程以了解原因),所以我必须通过添加bang 运算符( )告诉Dart我确定_counter它不为空。于是我写了!

但这不起作用:我收到错误消息

对不可赋值表达式的非法赋值。

那么,有没有一种方法可以解决这个问题而无需显式编写

0 投票
3 回答
965 浏览

flutter - 输入'列表' 不是类型 'List 的子类型' 在类型转换中

在运行dart migrate并应用 null 安全性之后,我的代码中弹出了该错误,我认为这是导致代码块的错误。

错误消息说:

如果有人遇到这个问题,如何解决?

0 投票
1 回答
133 浏览

dart - 由于 Dart 中的 Null 安全问题,无法构建我的项目

我已经离开 Flutter 和 Dart 一个月了,但是当我看到 Flutter 2 发布时,我决定更新我的一个 Flutter 项目。超级酷的一切,我只喜欢 Flutter 和 Dart。

现在我遇到了一个空安全问题。

Dart 正在抱怨一种方法,我在构建项目时得到了。

它抱怨的方法

代码很难看,但除此之外,我看不到此方法中的任何内容都可能返回 null。

还是我傻?

0 投票
4 回答
6004 浏览

flutter - 带有 NullSafety 的 Flutter 中的单例类

我有这个类,它通过使用工厂构造函数获取一些参数,如果实例为空,将创建一个新对象;如果它不为 null,则将返回实例的值,因此我们始终会收到相同的对象(单例)。这就是我在启用 dart 的 null 安全功能之前使用单例模式的方式。

现在启用空安全,我得到这个错误:

if (_instance == null)不再需要了。

如果我这样定义_instance static late final GuestUser _instance;那么我不能使用if (_instance == null)_instance 仅在需要时创建。所以每次调用工厂构造函数时,我都必须删除 if 语句并创建一个新实例。

如何解决这个问题并创建一个启用空值安全的单例类?

我有这个解决方案来使用布尔变量跟踪实例:

但是我想知道是否有一种方法可以在不定义新变量并使用空安全特性的情况下做到这一点

0 投票
0 回答
321 浏览

firebase - 无法添加用户:[cloud_firestore/unknown] 需要一个类型为“((对象)=> 对象)?”的值,但得到一个类型为“(对象?)=> 动态的值

我正在尝试在flutter null安全版本上使用firestore,但是在获取数据或写入数据时遇到了这个问题

无法添加用户:[cloud_firestore/unknown] 需要一个类型为“((对象)=> 对象)?”的值,但得到一个类型为“(对象?)=> 动态”的值

这是我尝试过的示例小部件