gpt4 book ai didi

node.js - 如何禁用 TypeScript Object.defineProperty(exports, "__esModule", { value : true })?

转载 作者:搜寻专家 更新时间:2023-10-30 21:02:15 25 4
gpt4 key购买 nike

ts 编译器在每个文件中发出这一行:

Object.defineProperty(exports, "__esModule", { value: true });

但是我的代码是在 Nodejs 上运行的,我不是在写一个 libaray,所以我认为这一行对我来说是不必要的。我怎样才能禁用它?我的编译器选项是:

{
"compilerOptions": {
"target": "es6",
"module": "commonjs",
"allowJs": true,
"sourceMap": true,
"outDir": "build",
"moduleResolution": "Node",
"lib": ["es6"]
}
}

例如编译这个ts文件:

function add(a: number, b: number): number {
return a + b
}

export { add }

我得到了:

"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
function add(a, b) {
return a + b;
}
exports.add = add;
//# sourceMappingURL=App.js.map

如何删除第二行?

最佳答案

But my code is running on Nodejs, I am not writing a libaray so I think this line is unnecessary for me. How can I disable it

它工作正常。所以不要删除它。可以把它想象成 “use strict”。这不是必需的,但拥有它是件好事。

它的存在是为了允许转译器(typescript/babel/其他 future 的转译器)之间的互操作。

关于node.js - 如何禁用 TypeScript Object.defineProperty(exports, "__esModule", { value : true })?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44916757/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com