Typescript: Módulo com exportação "Objeto" tem emissão ES5 ruim

Criado em 28 jul. 2017  ·  3Comentários  ·  Fonte: microsoft/TypeScript

Versão do TypeScript: 2.2 até a atual

Código
Arquivo TS:
export class Object {}
tsconfig.json:
{"compilerOptions": {"target": "es5"}}

Comportamento esperado:
O módulo deve ser capaz de inicializar como no TypeScript 2.1.

Comportamento real:
O módulo falha ao inicializar; TypeError: Object is undefined .

O código emitido é

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
var Object = (function () {
    function Object() {
    }
    return Object;
}());
exports.Object = Object;

Claramente, Object.defineProperty tem como objetivo fazer referência ao Object global, mas obtém uma variável local não inicializada.

Bug Fixed help wanted

Todos 3 comentários

Como solução temporária, você pode nomear sua classe _Object e escrever export { _Object as Object }

Isso deve ser um erro, semelhante ao erro que emitimos se você declarar seu próprio _this .

PRs bem-vindos.

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

born2net picture born2net  ·  150Comentários

kimamula picture kimamula  ·  147Comentários

xealot picture xealot  ·  150Comentários

tenry92 picture tenry92  ·  146Comentários

disshishkov picture disshishkov  ·  224Comentários