eslint/no-unassigned-vars Correctness
作用
禁止读取但从未赋值的 let 或 var 变量。
忽略的文件
此规则会完全忽略 .svelte 和 .vue 文件。Oxlint 只解析这些文件的 <script> 块,因此由模板赋值的绑定看起来像从未被赋值。在 Svelte 中,模板通过 bind:this={el} 和 bind:value={x} 写入;在 Vue 中,<script setup> 中的 let 是一个 setup-let 绑定,v-model="x" 和 @click="x = 1" 等内联处理程序会直接为其赋值。
为什么这是不好的做法?
此规则会标记那些从未被赋值、但仍在代码中被读取或使用的 let 或 var 声明。 由于这些变量的值始终为 undefined,它们的使用很可能是编程错误。
示例
此规则的错误代码示例:
js
let status;
if (status === "ready") {
console.log("Ready!");
}此规则的正确代码示例:
js
let message = "hello";
console.log(message);
let user;
user = getUser();
console.log(user.name);如何使用
To enable this rule using the config file or in the CLI, you can use:
json
{
"rules": {
"no-unassigned-vars": "error"
}
}ts
import { defineConfig } from "oxlint";
export default defineConfig({
rules: {
"no-unassigned-vars": "error",
},
});bash
oxlint --deny no-unassigned-vars版本
此规则添加于 v1.10.0。
