跳到主要內容

avoid_catching_errors

穩定

不要顯式捕獲 Error 或實現 Error 的型別。

詳情

#

不要 顯式捕獲 Error 或實現 Error 的型別。

Error 與 Exception 不同之處在於,Error 可以在執行時之前進行分析和預防。幾乎不應該在執行時捕獲 Error。

不好的示例

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

好的示例

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

啟用

#

要啟用 avoid_catching_errors 規則,請在 analysis_options.yaml 檔案的 linter > rules 下新增 avoid_catching_errors

analysis_options.yaml
yaml
linter:
  rules:
    - avoid_catching_errors

如果您使用 YAML 對映語法來配置 linter 規則,請在 linter > rules 下新增 avoid_catching_errors: true

analysis_options.yaml
yaml
linter:
  rules:
    avoid_catching_errors: true