dart - 嵌套异步方法的抖动捕获错误

标签 dart flutter futuretask

我有这种方法。

asyncFunction1() async {
  Firestore.instance.runTransaction((transaction){
    var first = await transaction.something;
    var second = await secondInside();
  });
}

现在,我想调用此方法,并捕获其中发生的所有错误。我将如何传播错误,以便
try {asyncFunction1()} catch(e){}
捕获runTransaction内部发生的所有错误?

最佳答案

您的内部函数错过了async才能使用await。如果添加它,则可以使用try / catch

asyncFunction1() {
  Firestore.instance.runTransaction((transaction) async {
    try {
      var first = await transaction.something;
      var second = await secondInside();
    } catch(e) {
      ...
    }
  });
} 

关于dart - 嵌套异步方法的抖动捕获错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50688415/

相关文章:

java - OrientDB - Java进程: memory out of control

java - 如何进入 FutureTask 执行状态?

android - 如何在 Flutter 中实现下拉列表?

Flutter 在构建小部件之前从 firestore 初始化对象

android-studio - Flutter 未检测到 Android Studio

firebase - Flutter/Dart QuerySnapshot isEqualTo 或运算符?

java - 如何在特定日期在java中运行 future 的任务

android - flutter 的椭圆形

flutter - Flutter:Filterchip不更新表格中检查的初始值

flutter google_sign_in 崩溃 : __exceptionPreprocess + 294