diff --git a/packages/babel-helper-function-name/src/index.js b/packages/babel-helper-function-name/src/index.js index bdce1f819c12..b736d76f575a 100644 --- a/packages/babel-helper-function-name/src/index.js +++ b/packages/babel-helper-function-name/src/index.js @@ -179,7 +179,7 @@ export default function({ node, parent, scope, id }, localBinding = false) { return; } } - } else if (t.isAssignmentExpression(parent)) { + } else if (t.isAssignmentExpression(parent, { operator: "=" })) { // foo = function () {}; id = parent.left; } else if (!id) { diff --git a/packages/babel-plugin-transform-function-name/test/fixtures/function-name/function-assignment/input.js b/packages/babel-plugin-transform-function-name/test/fixtures/function-name/function-assignment/input.js index e8efb0c87a4e..3725d0fe7260 100644 --- a/packages/babel-plugin-transform-function-name/test/fixtures/function-name/function-assignment/input.js +++ b/packages/babel-plugin-transform-function-name/test/fixtures/function-name/function-assignment/input.js @@ -11,3 +11,5 @@ baz = 12; bar = function() { bar(); }; + +qux += function() {} diff --git a/packages/babel-plugin-transform-function-name/test/fixtures/function-name/function-assignment/output.js b/packages/babel-plugin-transform-function-name/test/fixtures/function-name/function-assignment/output.js index d0313b653d93..8527bf833e5b 100644 --- a/packages/babel-plugin-transform-function-name/test/fixtures/function-name/function-assignment/output.js +++ b/packages/babel-plugin-transform-function-name/test/fixtures/function-name/function-assignment/output.js @@ -23,3 +23,5 @@ bar = function (_bar) { }(function () { bar(); }); + +qux += function () {};