【问题标题】:Is there any good reason to set the compiler option "declaration" to true in a typescript project是否有充分的理由在打字稿项目中将编译器选项“声明”设置为 true
【发布时间】:2018-06-05 02:21:12
【问题描述】:

我有一个打字稿项目,我可能想在未来将它作为 NPM 包发布。

现在我已经在我的tsconfig.json 中设置了"declaration": true。 然而,这给我带来了一些问题(这对这个问题并不重要)。

如果我将它设置为false,一切都会按我的意愿运行。

declaration 标志设置为 true 时,会生成 d.ts 文件。但是根据帖子我的理解 About "*.d.ts" in TypeScript 是,这仅在您尚未使用 typescript 编程(即您的项目是 javascript)时才相关,以便您以后可以在 typescript 项目中轻松使用此 javascript 库,因为您现在拥有类型。

那么当项目是“纯”打字稿时,为什么有人应该将此设置设置为true?我可以安全地将其设置为false吗?

【问题讨论】:

    标签: typescript npm typing


    【解决方案1】:

    在 typescript 项目中将编译器选项“声明”设置为 true 有什么好的理由吗?

    是的。

    特别是如果您要作为 NPM 包发布!

    理由

    当您创建 NPM 包时,您应该包含 .js.d.ts 文件,而不是 .ts 文件。这使您的包真正可移植,并确保它可以被 TypeScript 项目普通的旧 JavaScript 项目使用。

    这是 NPM 上 TypeScript 的推荐打包机制,有关发布的更多信息可以在 handbook 中找到。

    【讨论】:

    • 在等待答案时,我自己得出了同样的结论——感谢您的确认;)
    猜你喜欢
    • 2017-09-05
    • 1970-01-01
    • 2016-09-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-09-16
    • 2013-11-12
    • 1970-01-01
    相关资源
    最近更新 更多