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
を参照することを目的としていますが、代わりに初期化されていないローカル変数を取得します。
一時的な回避策として、あなたはあなたのクラスに名前を付けることができます_Object
と書くexport { _Object as Object }
これは、独自の_this
を宣言した場合に発行されるエラーと同様のエラーであるはずです。
PRは歓迎しました。