oxc/no-optional-chaining Restriction
它的作用
禁止使用 可选链。
为什么这不好?
如果你需要维护与较旧环境的兼容性,你可能会想使用这条规则。 不过,自 2020 年以来,所有主流浏览器都已支持可选链, 而且如今通常可以安全使用。
在某些情况下,将可选链转译后会生成冗长的辅助代码, 从而影响打包体积和性能。当你需要避免转译后的可选链带来的开销时,这条规则很有用。 这仅在你通过 polyfill 以支持 2020 年之前的浏览器时才相关。
在目前的大多数代码库中,你不应该使用这条规则。
示例
以下是此规则的错误代码示例:
javascript
const foo = obj?.foo;
obj.fn?.();配置
此规则接受一个包含以下属性的配置对象:
message
type: string
default: ""
当检测到可选链时显示的自定义帮助消息。 例如:"我们的输出目标是 ES2016,而可选链会产生冗长的 辅助代码,因此应避免使用。"
如何使用
To enable this rule using the config file or in the CLI, you can use:
json
{
"rules": {
"oxc/no-optional-chaining": "error"
}
}ts
import { defineConfig } from "oxlint";
export default defineConfig({
rules: {
"oxc/no-optional-chaining": "error",
},
});bash
oxlint --deny oxc/no-optional-chaining版本
此规则于 v0.5.0 中加入。
