npm @types org包中的TypeScripttypes

我注意到有一个npm组织@types ,其中包含input包,但无法find任何文档。 这些是如何使用的?

这是否意味着与打字工具一起使用? 如果是的话,如何安装? 例如,有一个@types/openlayers包,但@types/openlayers typings search npm:openlayers什么都不返回。

这是否意味着与打字工具分开使用? 比如直接用npm安装?

至于TypeScript 2.0,types不再是必需的。 npm组织是一个设立开发团队的实体。 我相信微软在npm中设置@types组织,并将TypeScript开发团队添加到组织中。 @types组织下的包根据文档使用types-publisher工具从DefinitelyTyped自动发布。

另外,还有另外一种方法来为你的包添加types

在你的package.json中

如果你的包有一个主要的.js文件,你也需要在你的package.json文件中指明主要的声明文件。 将types属性设置为指向您的捆绑声明文件。 例如:

 { "name": "awesome", "author": "Vandelay Industries", "version": "1.0.0", "main": "./lib/main.js", "types": "./lib/main.d.ts" } 

请注意, "types" "typings"字段与"types"同义,也可以使用。

还要注意,如果你的main声明文件被命名为index.d.ts并且位于包的根目录( index.js旁边),你不需要标记"types"属性,尽pipe这样做是可取的。

关于searchtypes

在大多数情况下,types声明包应始终与npm上的包名称相同,但前缀为@ types /,但如果需要,可以查看https://aka.ms/types以查找包为你喜欢的图书馆。;

从 – http://www.typescriptlang.org/docs/handbook/declaration-files/consumption.html

但是当我做了npm search @types/openlayers ,我没有得到任何结果。 但是,从networking界面进行search确实给我的结果。 所以我猜npm search不会跨组织search。

在TypeScript博客上的公告答案是: 宣言文件的未来

概要:

@types npm组织用于通过npm获取types定义。 使用这些types定义是TypeScript 2.0中的一个特性。

这将取代当前的项目/工具,如typings和tsd ,虽然这些将继续支持一段时间。

这将是在Typescript 2.0中推出的一个function。 这为UMD模块/库和它们各自的定义提供了types支持。

请参阅https://github.com/Microsoft/TypeScript/issues/7125#issuecomment-210182488以更好地了解当前使用环境types的问题。;