是否有理由在类型和接口前面使用声明关键字?

2023-12-20

我遇到过一些这样的代码:

declare type A = { ... };
declare interface B { ... }

从寻找declare关键字(由于某种原因,没有一个点击指向我的 TypeScript 文档),declare当 JavaScript 中存在变量并且您需要从 TypeScript 引用它时使用,因此您向编译器声明该变量确实存在。

我发现使用此关键字的所有示例都像这样使用:declare var a;

为什么我会在一个人面前使用它type or interface?根据我的理解declare,这样做是完全没有用的,但是编译器不会给我任何错误。


看来我刚刚才知道原因。

来自这个githubissue https://github.com/Microsoft/TypeScript/issues/1940:

declare在类型别名和接口上应该是可选的。

declare type and declare interfacetype and interface

由于我们已经通过这种方式提供了类型别名,因此人们必须编写declare type好几次了。我们可以打破它们并说“写type, not declare type”,但这将是一个没有真正原因的巨大突破。

综上所述,没有理由使用declare对于类型和接口。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

是否有理由在类型和接口前面使用声明关键字? 的相关文章

随机推荐