我是Flutter的新手。我在一个空值错误上使用了这个错误检查操作符。但我无法解决它。这是第二个异常“The relevant error-causing widget was Consumer”发生的地方:
@override
Widget build(BuildContext context) {
return Positioned(
bottom: ScreenUtil().setSp(74),
child: SizedBox(
width: ScreenUtil().setSp(67),
height: ScreenUtil().setSp(67),
child: Consumer<AnimationProvider>(
builder: (_, AnimationProvider animate, __) { // AnimationProvider
return FloatingActionButton(
backgroundColor: CustomColor.bluelight,
onPressed:
animate.flareAnimationCompleted
? () async => await _handleAnimation(context)
: () {},
child: buildFlareActor(animate));
},
),
),
);
}
字符串
建设者:
final Widget Function(
BuildContext context,
T value,
Widget? child,
) builder;
型
这是调试器的输出:
小部件库捕获到异常
在空值上使用的检查运算符相关的导致错误的小部件是CustomBottomBar
小部件库捕获到异常
在空值上使用的校验运算符相关的导致错误的小部件是Consumer AnimationProvider
═══════════════════════════════════════════════════════════════════════
请帮帮我谢谢
2条答案
按热度按时间uxhixvfz1#
你得到这个错误是因为你在一个已经为空的变量上使用了空检查运算符“!”。解决方案是正确地初始化这些变量,或者避免在它们没有初始化的时候调用它们。搜索你添加了“!”的代码部分。“运算符,并查看这些变量是否正确初始化。如果需要更多帮助,请编辑你的问题,包括整个代码,你面临这个错误。
sbtkgmzw2#
你得到这个错误是因为你在一个空值上使用了空检查操作符(!)。所以确认你的空检查操作符使用的变量是否被正确赋值。
另一个解决方案是你可以初始化默认值为你的变量
例如:-
int age=10;或者你可以使用age??20代替!age