• 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧

TypeScript包含没有JS库的@types的原理是什么?

JavaScript 来源:Jize 3次浏览

通过参考@types/foo,我们可以在TypeScript代码中使用JavaScript库的功能。但为什么?它只是定义了一堆数据类型和接口,但实际的逻辑仍然在JS代码中。如何在不包含原始JS库的情况下运行代码?TypeScript包含没有JS库的@types的原理是什么?

例如,要在TypeScript中实现地图服务,我们只包含@types/googlemaps而没有JS库googlemaps。为什么这样?


===========解决方案如下:

如果没有实际库,代码将无法运行。一般来说,你会对@types有一个开发依赖,并且完全依赖于实际的库。

这些类型用于为库回填类型信息,从而为您提供自动完成,提示和类型检查 – 但实际上它们在运行时并未提供任何内容。

在某些情况下,程序包将提供自己的类型,因此您不需要@types开发依赖项,但几乎不存在相反的情况(唯一的例外情况是lib.d.ts不包括在内一个由浏览器等支持的功能,并且你暂时使用了一个定义来让编译器知道它)。


版权声明:本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系管理员进行删除。
喜欢 (0)