eslint/prefer-destructuring 风格
它做了什么
要求从数组和/或对象中进行解构
为什么这是不好的?
随着 JavaScript ES2015 的推出,新增了一种语法,可以从数组索引或对象属性创建变量,称为解构。此规则强制使用解构,而不是通过成员表达式访问属性。
示例
此规则的错误代码示例:
js
// 启用 `array` 时
const foo = array[0];
bar.baz = array[0];
// 启用 `object` 时
const qux = object.qux;
const quux = object["quux"];此规则的正确代码示例:
js
// 启用 `array` 时
const [foo] = array;
const arr = array[someIndex];
[bar.baz] = array;
// 启用 `object` 时
const { baz } = object;
const obj = object.bar;配置
此规则接受一个配置对象,包含以下属性:
AssignmentExpression
type: object
default: {"array":true, "object":true}
用于配置赋值表达式中的解构,可独立配置数组和对象。
AssignmentExpression.array
type: boolean
default: true
AssignmentExpression.object
type: boolean
default: true
VariableDeclarator
type: object
default: {"array":true, "object":true}
用于配置变量声明中的解构,可独立配置数组和对象。
VariableDeclarator.array
type: boolean
default: true
VariableDeclarator.object
type: boolean
default: true
enforceForRenamedProperties
type: boolean
default: false
决定对象解构规则是否适用于重命名的变量。
如何使用
要通过配置文件或 CLI 启用此规则,可以使用:
json
{
"rules": {
"prefer-destructuring": "error"
}
}bash
oxlint --deny prefer-destructuring