我遇到过一些这样的代码:
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 interface
与type
and interface
由于我们已经通过这种方式提供了类型别名,因此人们必须编写declare type
好几次了。我们可以打破它们并说“写type
, not declare type
”,但这将是一个没有真正原因的巨大突破。
综上所述,没有理由使用declare
对于类型和接口。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)