报告错误的直接比较,例如使用 ==,并建议改用 errors.Is

从 Go 1.13 开始,可以使用 fmt.Errorf 函数和 %w 动词来包装错误。 因此,对于已包装错误,使用相等检查直接比较错误可能会失败。 从 Go 1.13 开始,检查特定错误的首选方式是使用标准库中的 errors.Is 函数。

快速修复会将错误的直接比较替换为调用 errors.Is

示例:


if err == MyError {
  fmt.Println("MyErr")
}

在应用快速修复后:


if errors.Is(err, MyError) {
  fmt.Println("MyErr")
}