Typescript: 「オブジェクト」エクスポートのあるモジュールのES5エミットが不良

作成日 2017年07月28日  ·  3コメント  ·  ソース: microsoft/TypeScript

TypeScriptバージョン: 2.2から現在

コード
TSファイル:
export class Object {}
tsconfig.json:
{"compilerOptions": {"target": "es5"}}

予想される行動:
モジュールは、TypeScript2.1の場合と同じように初期化できる必要があります。

実際の動作:
モジュールの初期化に失敗しました。 TypeError: Object is undefined

放出されたコードは

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

明らかにObject.definePropertyはグローバルObjectを参照することを目的としていますが、代わりに初期化されていないローカル変数を取得します。

Bug Fixed help wanted

全てのコメント3件

一時的な回避策として、あなたはあなたのクラスに名前を付けることができます_Objectと書くexport { _Object as Object }

これは、独自の_thisを宣言した場合に発行されるエラーと同様のエラーであるはずです。

PRは歓迎しました。

このページは役に立ちましたか?
0 / 5 - 0 評価