首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >module.exports ={ fn }是否与exports.fn = fn相同

module.exports ={ fn }是否与exports.fn = fn相同
EN

Stack Overflow用户
提问于 2021-05-02 01:09:40
回答 1查看 32关注 0票数 0

对于工作测试,我需要像这样创建库:

代码语言:javascript
复制
// do-it.js
function doIt(smth) {}

module.exports = {
    doIt,
};

但我使用的是typescript和编译后的do-it.ts文件,如下所示:

代码语言:javascript
复制
// do-it.js when compiled from do-it.ts
exports.__esModule = true;
exports.doIt= exports.another = void 0;

function doIt(smth) {}
exports.doIt = doIt;

function another() {}
exports.another= another;

从这两个示例中导出的效果是否相同?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-05-02 01:15:21

粗略地说,是的;当然,由此产生的输出是相同的。

我是说,如果你有:

代码语言:javascript
复制
module.exports = {
    doIt,
};

后来也做到了

代码语言:javascript
复制
module.exports = {
    doSomethingElse,
};

您会遇到一个问题,因为第二个完全替换了前面的exports对象。

你根本不需要创建这个对象,它是在你的模块被调用之前为你创建的。所以真的,你可以这样做

代码语言:javascript
复制
exports.doIt = doIt;

然后

代码语言:javascript
复制
exports.doSomethingElse = doSomethingElse;

首先。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67348878

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档