是否建议发布TypeScript节点模块的源文件?

是否建议发布TypeScript节点模块的源文件?,typescript,node-modules,loopbackjs,loopback4,Typescript,Node Modules,Loopbackjs,Loopback4,我注意到一些TypeScript节点模块(例如)使用节点模块发布其源文件。是否有特殊原因,或者只是不必要地增加了模块的大小?从可靠的源代码开始:只考虑将声明文件与编译的.js文件捆绑,不包括.ts文件 由于没有贡献者,我可以想象包@loopback/authentication的两个原因: 和调试支持(最有可能) 用作某种源程序包1 1.源映射和调试支持 包作者可能包括调试支持的源映射,这些源映射引用/映射到src中的原始.ts文件。这样,这些原始来源也需要分发。例如,authenticatio

我注意到一些TypeScript节点模块(例如)使用节点模块发布其源文件。是否有特殊原因,或者只是不必要地增加了模块的大小?

从可靠的源代码开始:只考虑将声明文件与编译的
.js
文件捆绑,不包括
.ts
文件

由于没有贡献者,我可以想象包
@loopback/authentication
的两个原因:

  • 和调试支持(最有可能)
  • 用作某种源程序包1
  • 1.源映射和调试支持 包作者可能包括调试支持的源映射,这些源映射引用/映射到
    src
    中的原始
    .ts
    文件。这样,这些原始来源也需要分发。例如,
    authentication.component.js.map

    "sources": ["../src/authentication.component.ts"],
    
    旁注:sourcemap“spec”还将提供一个
    sourcesContent
    字段来支持自包含的源映射

    2.源程序包 作为预编译文件的替代方案,该包提供了对构建目标不固执己见的功能。因此,客户端应用程序项目可以利用其绑定器,以特定的目标格式传输库本身。例如,如果您支持a)Electron和b)多种浏览器,则不需要为Electron渲染器构建额外的多边形填充和转换



    一,;另请参见,(React-biased)

    他们只在npm包中发布带有.js文件的.d.ts文件,而不是.ts源文件。@ford04他们也在发布.ts文件,它在
    包.json
    文件中定义。例如可以通过安装模块或在目录中运行
    npm-pack
    查看将发布的内容来验证这一点。您是对的。抓取下一个
    环回
    包,其中不包括它们。对于
    @loopback/authentication
    您确实找到了一个包含.ts文件的
    src
    文件夹。谢谢您的回答。我还考虑了您提到的第一个场景,如果在调试时包含src文件+映射,那么它将使用.ts文件而不是.js文件。我甚至没有考虑过你提到的第二种情况,但这也是有道理的,我仍然不确定是否包含SRC文件是值得的,因为它需要更多的代码来下载,而且优势是大部分时间都不相关。是的,我认为第二种情况对于公共图书馆来说是很不寻常的。您可能会在内部项目中有更多的源代码包,为了完整性,我刚才在这里提到了它。当我有任务传输一个外部npm包时,这种情况就出现了。因此,包括是或否,答案可能是:视情况而定:)。我更喜欢将包视为外部的。如果我怀疑包中有错误,我会从github克隆它,并将其与其他包隔离测试。