summaryrefslogtreecommitdiff
path: root/tools/node_modules/eslint/lib/rules/prefer-const.js
diff options
context:
space:
mode:
Diffstat (limited to 'tools/node_modules/eslint/lib/rules/prefer-const.js')
-rw-r--r--tools/node_modules/eslint/lib/rules/prefer-const.js12
1 files changed, 9 insertions, 3 deletions
diff --git a/tools/node_modules/eslint/lib/rules/prefer-const.js b/tools/node_modules/eslint/lib/rules/prefer-const.js
index 68c07da4ed..854da310e4 100644
--- a/tools/node_modules/eslint/lib/rules/prefer-const.js
+++ b/tools/node_modules/eslint/lib/rules/prefer-const.js
@@ -420,8 +420,9 @@ module.exports = {
let shouldFix = varDeclParent &&
- // Don't do a fix unless the variable is initialized (or it's in a for-in or for-of loop)
- (varDeclParent.parent.type === "ForInStatement" || varDeclParent.parent.type === "ForOfStatement" || varDeclParent.declarations[0].init) &&
+ // Don't do a fix unless all variables in the declarations are initialized (or it's in a for-in or for-of loop)
+ (varDeclParent.parent.type === "ForInStatement" || varDeclParent.parent.type === "ForOfStatement" ||
+ varDeclParent.declarations.every(declaration => declaration.init)) &&
/*
* If options.destructuring is "all", then this warning will not occur unless
@@ -450,7 +451,12 @@ module.exports = {
node,
messageId: "useConst",
data: node,
- fix: shouldFix ? fixer => fixer.replaceText(sourceCode.getFirstToken(varDeclParent), "const") : null
+ fix: shouldFix
+ ? fixer => fixer.replaceText(
+ sourceCode.getFirstToken(varDeclParent, t => t.value === varDeclParent.kind),
+ "const"
+ )
+ : null
});
});
}