【发布时间】:2021-09-18 23:07:19
【问题描述】:
我的 Flutter 应用程序中有以下 Text( ... ) 小部件
Text(
data['location'],
style: TextStyle(
fontSize: 40,
letterSpacing: 2,
color: Colors.white
)
但是,它一直向我显示无法访问 data['location'] 的错误,因为它可能为 null。我想这与 Dart 的 null 安全检查有关
我的代码流程是这样的:
-
我在 Text( ... ) 小部件中访问的数据对象在上面声明如下:
Object? data; -
之后,当我从另一个屏幕向这个屏幕传递数据时,我使用上面声明的数据对象并执行以下赋值:
data = ModalRoute.of(context)!.settings.arguments; -
最后,我在我的 Text( ... ) 小部件中访问此数据对象
我应该怎么做才能避免这个错误?
【问题讨论】:
-
您需要先设置
ModalRoute.of(context)的值以防null。 ModalRoute.of(context) == null ? defaultData : ModalRoute.of(context).settings.arguments;或者,如果您对data没问题,请使用data = ModalRoute.of(context)?.settings.arguments; -
@SimonSot 问题仍然存在。它仍然给出相同的错误
标签: flutter dart dart-null-safety