我正在将现有项目转换为具有Bower和npm依赖性(bower.json和package.json)的TypeScript。根据tsd github page,
但是,当我在tsd link
之后运行命令tsd init
时,即使我的package.json充满了模块,它也只是说no (new)packages to link
。这使我发现,也许它没有按照我的想法做。
什么?如果link
功能不只是从package.json中获取类型定义,它的目的是什么?这个命令是否仅仅是从package.json中提取tsd配置,而不是从tsd.json文件中提取?那么,除了消除tsd.json文件之外,还有什么意义呢?
因此,如果不是tsd link
,我在问是否有更好的方法来自动为我的所有依赖项包含tsd定义。对我来说,这些全部由人来管理似乎有些疯狂。
最佳答案
tsd link
不是一个神奇的命令。第一次看到此命令时,我想和您一样。
如果您通过Bower或NPM安装新软件包,并且该软件包与.d.ts
bundle 在一起,并且在配置文件中也包含"typescript": { "definition": "..." }
,则该.d.ts
将包含在您的tsd.d.ts
文件中,如下所示:
/// <reference path="jquery/jquery.d.ts" />
/// <reference path="../bower_components/angular/angular.d.ts" />
如果该软件包不提供
d.ts
文件和定义配置,则此命令将无效。