我正在 dart/flutter 中做一些(我认为的)基本异常处理。截至上周(2019 年 3 月 15 日),我正在使用最新版本的 dart 和 flutter。
这是我的代码:
void MyMethod() {
Storage.getFilePaths().then((paths) {
//do something
}).catchError((Exception error) {
//do something else
return null;
});
}
但是,当运行程序并发生异常时,我在下面收到此消息并且看不到问题所在?
'Invalid argument (onError): Error handler must accept one Object or one Object and a StackTrace as arguments, and return a a valid result: Closure: (Exception) => Null'
我想我错过了一些愚蠢的东西,并且很想知道那是什么。
最佳答案
}).catchError((Exception error) {
必须是
}).catchError((Object error) {
这里不能限制为Exception
。 Dart 可以抛出各种值。
https://stackoverflow.com/questions/55268266/
相关文章:
build - 如何在 Flutter 中修复 "Gradle build failed to pr
listview - 如何通过 Flutter 中的 RaisedButton 传递/绑定(bind
android - 如何设置 Flutter 应用的构建和版本号
dart - 如何在 Flutter 中保存图像文件?使用 Image_picker 插件选择的文件
image - Flutter CircleAvatar backgroundImage没有填满圆圈
sqlite - 如何在 Flutter 中使用 SQFlite 进行数据库查询
dart - 在 Flutter 中调用 showTimePicker() 时如何使用 24 小时制