我有代码工作之前,但在引入空安全,这下面的代码是打破与错误
The body might complete normally, causing 'null' to be returned, but the return type, 'Future<String?>', is a potentially non-nullable type.
Try adding either a return or a throw statement at the end.
下面是代码,我不确定,什么需要改变
@override
void initState() {
SystemChannels.lifecycle.setMessageHandler((msg) {
// debugPrint('SystemChannels> $msg');
super.initState();
if (msg == AppLifecycleState.resumed.toString()) {
// print("in resumed of payments");
setState(() {
dataLoaded = false;
});
customerPayments();
} else {
throw Exception("In Else");
}
});
}
customerPayments()
是void方法。
1条答案
按热度按时间c0vxltue1#
您在
initState
中声明了一个函数,该函数需要为每个可能的结果返回一个值。然而,除了其他问题,你不应该在你声明的函数中调用super.initState()
。你可以在之前或之后调用它,这取决于你在做什么。从本质上讲,这个特定的错误消息基本上是说,就Flutter所知,函数有可能在没有潜在返回值的情况下结束,从而返回null。
https://api.flutter.dev/flutter/widgets/State/initState.html