如果我根据数组特定索引中的对象分配两个变量,我该如何传递 eslint 的 "prefer-destructuring" 规则?
How do I pass eslint's "prefer-destructuring" rule if I'm assigning two variables based off an object in a specific index of an array?
我有数组 touchEvents。看起来像:
evt: {
touchEvents: [
{
clientX: 3,
clientY: 4,
}, {...}, ...
]
}
我想将两个变量重新分配给数组的 [0]
位置的两个属性。
我做到了:
clientX = evt.touchEvents[0].clientX;
clientY = evt.touchEvents[0].clientY;
eslint linter 说:
error: Use object destructuring (prefer-destructuring)
所以我做了:
({ clientX, clientY } = evt.touchEvents[0]);
我得到了错误
error: Use array destructuring (prefer-destructuring)
我不明白如何使用 "array destructuring" 来分配这些变量。我已经阅读了 mdn docs and the eslint documentation on destructuring 但我仍然不明白它想要我做什么,或者更确切地说,如何使用数组解构来分配这些变量。
如何使用 "array destructuring" 传递此 eslint 规则并分配我的变量?
两行就是
const [ touchEvents ] = evt.touchEvents
const { clientX, clientY } = touchEvents
或单行
const { clientX, clientY } = evt.touchEvents[0]
或
const [{ clientX, clientY }] = evt.touchEvents
如果您觉得有任何规则困扰您,您可以随时禁用 // eslint-disable-next-line <the-rule-name>
我有数组 touchEvents。看起来像:
evt: {
touchEvents: [
{
clientX: 3,
clientY: 4,
}, {...}, ...
]
}
我想将两个变量重新分配给数组的 [0]
位置的两个属性。
我做到了:
clientX = evt.touchEvents[0].clientX;
clientY = evt.touchEvents[0].clientY;
eslint linter 说:
error: Use object destructuring (prefer-destructuring)
所以我做了:
({ clientX, clientY } = evt.touchEvents[0]);
我得到了错误
error: Use array destructuring (prefer-destructuring)
我不明白如何使用 "array destructuring" 来分配这些变量。我已经阅读了 mdn docs and the eslint documentation on destructuring 但我仍然不明白它想要我做什么,或者更确切地说,如何使用数组解构来分配这些变量。
如何使用 "array destructuring" 传递此 eslint 规则并分配我的变量?
两行就是
const [ touchEvents ] = evt.touchEvents
const { clientX, clientY } = touchEvents
或单行
const { clientX, clientY } = evt.touchEvents[0]
或
const [{ clientX, clientY }] = evt.touchEvents
如果您觉得有任何规则困扰您,您可以随时禁用 // eslint-disable-next-line <the-rule-name>