Skip to content
← Back to rules

unicorn/catch-error-name Style

🛠️ An auto-fix is available for this rule.

它的作用

此规则会强制 catch 语句中的错误变量使用一致且具有描述性的命名, 避免在使用错误对象时使用诸如 badName_ 这类含糊的名称。

为什么这不好?

使用像 badName_ 这样的非描述性名称会让代码更难阅读和理解, 尤其是在调试时。使用清晰、一致的名称来表示错误非常重要。

示例

以下是此规则的 错误 代码示例:

javascript
try {
} catch (badName) {}

// 如果使用了 `_`,则不允许
try {
} catch (_) {
  console.log(_);
}

promise.catch((badName) => {});

promise.then(undefined, (badName) => {});

以下是此规则的 正确 代码示例:

javascript
try {
} catch (error) {}

// 如果 `_` 没有被使用,则允许
try {
} catch (_) {
  console.log(123);
}

promise.catch((error) => {});

promise.then(undefined, (error) => {});

配置

此规则接受一个包含以下属性的配置对象:

ignore

type: string[]

在检查 catch 变量名时要忽略的模式列表。该模式可以是字符串或正则表达式。

name

type: string

default: "error"

用于 catch 块中错误变量的名称。你可以将其自定义为 'error' 之外的其他名称(例如 'exception')。

如何使用

To enable this rule using the config file or in the CLI, you can use:

json
{
  "rules": {
    "unicorn/catch-error-name": "error"
  }
}
ts
import { defineConfig } from "oxlint";

export default defineConfig({
  rules: {
    "unicorn/catch-error-name": "error",
  },
});
bash
oxlint --deny unicorn/catch-error-name

版本

此规则于 v0.0.14 中添加。

参考资料