如何扩展打字声明?

时间:2016-10-04 05:48:56

标签: typescript typescript-typings

我正在使用一个在DefinitelyTyped / DefinitelyTyped github repo中有声明的npm模块,但该模块的输入不完整。

我已经提出拉取请求以获取遗失的声明,但是在接受之前我需要有办法临时扩展不完整的声明。

理想情况下,我希望能够在我的项目根目录中有一个temporaryTypings.d.ts文件,我可以为我遇到的每种情况添加声明。

2 个答案:

答案 0 :(得分:1)

您可以从非DefinitelyTyped源安装定义,例如您的DT分支:

# (this example is taken from https://www.npmjs.com/package/typings )
# If you need a specific commit from github. 
$ typings install d3=github:DefinitelyTyped/DefinitelyTyped/d3/d3.d.ts#1c05872e7811235f43780b8b596bfd26fe8e7760

npm因为typescript 2也可以从特定的git repo安装模块。

答案 1 :(得分:1)

您可以在源文件中的某个地方始终拥有一些project.d.ts文件。

您可以从/// <reference path="path/to/project.d.ts" />tsconfig.json等某个入口点引用它,只需添加适合您的输入法。

例如,我的全局文件通常包括:

declare module "leftpad" {
    var t : any;
    export = t;
}

这有助于我在没有require的情况下导入我的模块。定义文件可用后,您可以使用npm install @types/leftpad --save-dev安装它们,然后从global.d.ts文件中删除该模块声明。