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的问题。;