diff --git a/lib/6to5/transformation/transformers/es6-classes.js b/lib/6to5/transformation/transformers/es6-classes.js index db1022a33d..86629c0f03 100644 --- a/lib/6to5/transformation/transformers/es6-classes.js +++ b/lib/6to5/transformation/transformers/es6-classes.js @@ -9,10 +9,15 @@ exports.ClassDeclaration = function (node, parent, file, scope) { } var newNode = new Class(node, file, scope, closure).run(); - if (closure || t.isFunctionExpression(newNode)) { - return t.variableDeclaration("let", [ - t.variableDeclarator(node.id, newNode) - ]); + if (closure) { + // declaration in an expression context... + // export default class Foo {} + scope.push({ + kind: "var", + key: node.id.key, + id: node.id + }); + return t.assignmentExpression("=", node.id, newNode); } else { return newNode; }