目錄
目錄

Don’t explicitly catch Error or types that implement it.

This rule is available as of Dart 2.0.0.

Details

DON’T explicitly catch Error or types that implement it.

Errors differ from Exceptions in that Errors can be analyzed and prevented prior to runtime. It should almost never be necessary to catch an error at runtime.

BAD:

try {
  somethingRisky();
} on Error catch(e) {
  doSomething(e);
}

GOOD:

try {
  somethingRisky();
} on Exception catch(e) {
  doSomething(e);
}

Usage

To enable the avoid_catching_errors rule, add avoid_catching_errors under linter > rules in your analysis_options.yaml file:

linter:
  rules:
    - avoid_catching_errors