do not use Object.defineProperty in es3 target

This commit is contained in:
vvakame 2015-06-22 10:46:45 +09:00
parent 54a4e9e57d
commit 3aba5aa9b5
3 changed files with 18 additions and 21 deletions

View File

@ -2710,15 +2710,20 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
else {
if (node.flags & NodeFlags.Default) {
if (compilerOptions.module === ModuleKind.CommonJS || compilerOptions.module === ModuleKind.AMD || compilerOptions.module === ModuleKind.UMD) {
write("Object.defineProperty(exports, \"__esModule\", {");
writeLine();
increaseIndent();
// default value of configurable, enumerable, writable are `false`.
write("value: true");
writeLine();
decreaseIndent();
write("};");
writeLine();
if (languageVersion >= ScriptTarget.ES5) {
write("Object.defineProperty(exports, \"__esModule\", {");
writeLine();
increaseIndent();
// default value of configurable, enumerable, writable are `false`.
write("value: true");
writeLine();
decreaseIndent();
write("};");
writeLine();
} else {
write("exports.__esModule = true;");
writeLine();
}
}
if (languageVersion === ScriptTarget.ES3) {
write("exports[\"default\"]");

View File

@ -16,9 +16,7 @@ export default function f2() {
define(["require", "exports"], function (require, exports) {
function f1() {
}
Object.defineProperty(exports, "__esModule", {
value: true
};
exports.__esModule = true;
exports["default"] = f1;
});
//// [m2.js]
@ -26,8 +24,6 @@ define(["require", "exports", "./m1"], function (require, exports, m1_1) {
function f2() {
m1_1["default"]();
}
Object.defineProperty(exports, "__esModule", {
value: true
};
exports.__esModule = true;
exports["default"] = f2;
});

View File

@ -15,16 +15,12 @@ export default function f2() {
//// [m1.js]
function f1() {
}
Object.defineProperty(exports, "__esModule", {
value: true
};
exports.__esModule = true;
exports["default"] = f1;
//// [m2.js]
var m1_1 = require("./m1");
function f2() {
m1_1["default"]();
}
Object.defineProperty(exports, "__esModule", {
value: true
};
exports.__esModule = true;
exports["default"] = f2;