[英]How to link tsd definitions automatically with bower and npm?
我正在使用許多bower和npm依賴項(bower.json和package.json)將現有項目轉換為TypeScript。 根據tsd github頁面 ,
TSD支持從安裝有節點或bower的軟件包中發現和鏈接定義。 使用link命令,您的tsd.d.ts將更新為node_modules或bower_modules文件夾中文件的路徑。
但是當我在tsd init
之后運行命令tsd link
,它只是說no (new)packages to link
即使我的package.json是裝滿模塊的粉筆。 這讓我發現,也許它沒有做我認為它做的事情。
此功能將掃描package.json和bower.json文件以獲取typescript元素。 然后,此元素包含定義或定義子元素,其中包含.d.ts文件的相對路徑:
什么? 如果它不僅僅從我的package.json獲取類型定義,那么這個link
功能的目的是什么? 這個命令只是從我的package.json而不是在我的tsd.json文件中提取tsd配置嗎? 那么,除了消除tsd.json文件之外,重點是什么?
所以,如果它不是tsd link
,我問是否有更好的方法來自動包含所有依賴項的tsd定義。 對我來說,這些都是手工管理似乎有點瘋狂。
tsd link
不是一個神奇的命令。 當我第一次看到這個命令時,我就像你一樣。
如果您通過bower或NPM安裝新軟件包,並且軟件包與.d.ts
捆綁在一起,並且在配置文件中也有"typescript": { "definition": "..." }
.d.ts
"typescript": { "definition": "..." }
,那么.d.ts
將包括進入你的tsd.d.ts
文件,如下所示:
/// <reference path="jquery/jquery.d.ts" />
/// <reference path="../bower_components/angular/angular.d.ts" />
如果程序包不提供d.ts
文件和定義配置,則此命令d.ts
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.