flutter 无法将参数类型“字符串?”分配给数据库中的参数类型“字符串”小部件

fhg3lkii  于 2023-01-05  发布在  Flutter
关注(0)|答案(3)|浏览(94)

第一个月
我想显示的类别,我调用它从数据库,但文本填充发生错误。请帮助我

oalqel3c

oalqel3c1#

我们将category定义为一个可以为空的String,其类型为String?,而Text小部件要求它不可为空,其类型为String,有两种解决方案:
1.使category不可为空。为此,请将String? category更改为String category。这可能会给予其他错误,因此您可能无法执行此操作。
1.如果你确定在代码中的那个地方它永远不是null,在变量名后面写一个!,比如Text(widget.category!),如果它实际上是null,这将在运行时抛出错误。
1.你也可以在它为空的情况下提供一个回退值,比如Text(widget.category ?? 'fallback'),这可能是最安全的解决方案。

tcbh2hod

tcbh2hod2#

这意味着,category是可以为空的,所以你可以写Text(widget.category ?? 'alt text'),如果category为空,它会提供一些alt文本。

piok6c0g

piok6c0g3#

widget.category更改为

widget?.category: ""  👈 Prefer this else you'll get null operator on null value error

widget!.category

相关问题