diff --git a/packages/babel-plugin-proposal-logical-assignment-operators/src/index.js b/packages/babel-plugin-proposal-logical-assignment-operators/src/index.js index 813dcd761f7c..65b0f3caeb2e 100644 --- a/packages/babel-plugin-proposal-logical-assignment-operators/src/index.js +++ b/packages/babel-plugin-proposal-logical-assignment-operators/src/index.js @@ -13,7 +13,8 @@ export default declare(api => { AssignmentExpression(path) { const { node, scope } = path; const { operator, left, right } = node; - if (operator !== "||=" && operator !== "&&=" && operator !== "??=") { + const operatorTrunc = operator.slice(0, -1); + if (!t.LOGICAL_OPERATORS.includes(operatorTrunc)) { return; } @@ -41,7 +42,7 @@ export default declare(api => { path.replaceWith( t.logicalExpression( - operator.slice(0, -1), + operatorTrunc, lhs, t.assignmentExpression("=", left, right), ),