dart:集中式异常处理

时间:2016-07-12 17:17:03

标签: angular exception-handling dart

我想“集中”异常处理程序。例如:

// login_view.dart: the login view throws an exception
throw new LoginException("Invalid username or password");

// exception_handler.dart: in some point of my application the exception is captured 
void exceptionHandler(Exception e) {
  if (e is LoginException) {
    showModalDialog(e.toString()).then(() => redirectToLoginView());
  }
}

这可能吗?我已经阅读了ExceptionHandler类,但我不确定该类是否适合这种特定情况。 感谢。

1 个答案:

答案 0 :(得分:1)

您可以定义一个使用集中式异常处理包装操作的方法,例如:

void safely(action) { 
  try {action();}
  catch (ex) { /*exception handling here*/ }
}

//use 'safely' throughout your code like this
safely(() => doSomething());