diff --git a/eslint/babel-eslint-parser/acorn-to-esprima.js b/eslint/babel-eslint-parser/acorn-to-esprima.js index 29b2b003fe..a2ebdf0e3e 100644 --- a/eslint/babel-eslint-parser/acorn-to-esprima.js +++ b/eslint/babel-eslint-parser/acorn-to-esprima.js @@ -42,6 +42,20 @@ var astTransformVisitor = { delete node.name; } + // JSX + + if (t.isJSXIdentifier(node)) { + if (node.name === "this" && t.isReferenced(node, parent)) { + return t.thisExpression(); + } else { + node.type = "Identifier"; + } + } + + if (t.isJSXMemberExpression(node)) { + node.type = "MemberExpression"; + } + // functions if (t.isFunction(node)) {