34得票5回答
将Flutter代码迁移到空安全后,模拟对象不接受`any`。

自Flutter 2发布以来,我已将我的代码迁移到,现在所有的代码都是“sound null safety”的。但是在使用mockito 5.0.0进行单元测试时,我遇到了错误。例如: when(mockClient.login(any)).thenThrow(GrpcError.unava...

31得票9回答
Dart:带有可空属性的自定义“copyWith”方法

我正在为我的类创建一个“copyWith”方法,对于大多数情况它是有效的。 问题在于当我尝试将可为空的属性设置为null时,因为我的函数无法识别它是否是有意为之,所以会出现问题。 例如:class Person { final String? name; Person(this....

29得票2回答
Dart中的“sound null-safety”与Kotlin的null安全有何不同?

这个Dart官方视频指出,Dart的所谓“声音空安全”比Kotlin的空安全设计更好,因为它可以根据变量是否声明为空来优化代码,而其他语言(我认为包括Kotlin在内的语言)必须进行运行时检查以确保空安全。 那么,Dart做了哪些额外的优化呢? 在确保空安全的同时,它如何与不支持空安全的旧...

28得票6回答
Flutter必需关键字

我不是很理解required的工作原理。例如,我见过这段代码:class Test{ final String x; Test({ required this.x }); factory Test.initial(){ return Test(x: &quot...

25得票4回答
方法“[]”无法被无条件调用,因为接收器可能为“null”。

我是Flutter的新手。我正在尝试开发一个应用程序。 我想在Firebase数据库中显示员工列表。但是,我遇到了以下错误: 错误: 因为接收者可以为“null”,所以无法无条件调用方法"[]"。 尝试使用“?.”使调用可选,或将空检查添加到目标“!”。 我的代码:`import 'pac...

25得票5回答
Dart中类似于Swift中的if let和guard let的语法是什么?

我刚开始学习Flutter,之前有原生iOS开发经验,所以我有一个有关Dart beta的null safety的问题。 在Swift中,由于他们从一开始就有null safety的概念,就像Kotlin一样,这个语言有两个我很喜欢的特性,分别是if let和guard let。这两个特性让处...

24得票3回答
可空表达式不能用作条件。

我遇到了一个"nullable expression"错误。问题出现在以下代码行:left: isSideBarOpenedAsync.data ? 0 : 0, right: isSideBarOpenedAsync.data ? 0 : screenWidth - 35...

24得票2回答
错误:在使用声音空安全时,库不能默认选择退出空安全。

在将Flutter包升级到null安全性时,运行flutter test时遇到了以下错误: Error: A library can't opt out of null safety by default, when using sound null safety. // @dart = 2...

20得票2回答
如何在Dart的空安全模式下将List<T?>转换为List<T>?

我有一个 Dart 列表:List&lt;String?&gt; vals; 我想删除所有的空值,并将其转换为List&lt;String&gt;。我尝试过:List&lt;String&gt; removeNulls(List&lt;String?&gt; list) { return ...

19得票3回答
每次我创建一个新的小部件时都会出现“在小部件构造函数中使用键”警告。

每次我创建新类时都会收到警告。 在小部件构造函数中使用 key。 使用常量构造函数时,优先选择 const。 等等。这些错误是从哪里来的,我该如何消除它?