Skip to content
← Back to rules

oxc/no-optional-chaining 限制

它的作用

禁止使用 可选链

为什么这是个问题?

如果你需要保持与较旧环境的兼容性,可能会希望使用此规则。然而,自 2020 年以来,所有主流浏览器均已支持可选链,因此目前使用它是普遍安全的。

在某些情况下,将可选链转译可能会生成冗长的辅助代码,影响打包体积和性能。当需要避免转译后可选链带来的开销时,此规则非常有用。这仅在你需要通过垫片(polyfill)支持 2020 年之前的浏览器时才相关。

目前,在大多数代码库中,你不应使用此规则。

示例

此规则的 错误 代码示例:

javascript
const foo = obj?.foo;
obj.fn?.();

配置

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

message

type: string

default: ""

在发现可选链时显示的自定义帮助信息。 例如:"我们的目标输出环境是 ES2016,可选链会产生冗长的辅助函数,应避免使用。"

如何使用

要通过配置文件或命令行 启用 此规则,可以使用:

json
{
  "rules": {
    "oxc/no-optional-chaining": "error"
  }
}
bash
oxlint --deny oxc/no-optional-chaining

参考资料