在很多情况下,ESLint 的规则"prefer-destructuring"是相当奇怪的。考虑以下示例:
obj.someVar = myList[0];
Run Code Online (Sandbox Code Playgroud)
在这两种情况下,linter 都会警告我。
linter 想要的预期行为是什么?我可以使用临时变量来保存列表项的值,然后执行其余的逻辑,但我没有看到它有任何好处。有什么想法吗?
编辑:
我可以看到该规则在某些情况下的好处,即:
// bad
const someVar = myList[0];
// good
const [ someVar ] = myList;
Run Code Online (Sandbox Code Playgroud)
但是,当分配不直接给 var 时(例如分配对象的属性时),该规则似乎无关紧要。
ESLint 期望的obj.someVar = myList[0]是:
let obj = {};
let myList = [1,2];
[obj.someVar] = myList;
console.dir(obj);Run Code Online (Sandbox Code Playgroud)
以下是有关该主题的问题的链接:首选解构标记属性分配#11584
| 归档时间: |
|
| 查看次数: |
690 次 |
| 最近记录: |