TypeScript为可以实例化的模块编写d.ts文件

时间:2016-09-27 02:23:37

标签: typescript typescript-typings

我在为现有模块创建声明文件时遇到问题。

使用javascript时,使用语法导入模块:

var Library = require('thirdpartylibs');
var libInstance = new Library();

我创建了名为thirdpartylibs.d.ts的d.ts文件并添加以下内容:

declare module 'thirdpartylibs'{
   export class Library{}
}

在我的index.ts文件中:

import * as Library from 'thirdpartylibs'
let libInstance = new Library() // <--- error here

似乎我应该let libInstance = new Library.Library()使它工作,但它会在生成的JS上失败。

1 个答案:

答案 0 :(得分:6)

试试这个

declare module 'thirdpartylibs'{
   class Library {
      ...
   }
   export = Library
}

导入

import Library = require('thirdpartylibs')
const libInstance = new Library()

注意:这会使Library 导出。您使用的语法是&#34;名为export&#34;