如何使用.d.ts文件键入我自己的节点模块

时间:2019-05-15 04:29:47

标签: typescript webpack

我正在使用webpack和awesome-typescript-loader捆绑我的节点模块。我将捆绑的模块导入另一个软件包。在另一个包中,我得到了错误:

Could not find a declaration file for module 'mymodule'

我对程序包的默认导出是一个初始化的类:

import MyClass from './myClass';
const c = new MyClass();
export default c;

并从我的包裹中导入:

import c from 'mymodule';

MyClass是在其文件中键入的,但是如何从模块中导出.d.ts文件,因此我的其他软件包知道MyClass类型?

1 个答案:

答案 0 :(得分:1)

您可以在自己的lib文件夹中添加一个return this.bPrice > 30? this.bPrice * 0.90f : this.bPrice; public float Price { get { return this.bPrice > 30? this.bPrice * 0.90f : this.bPrice; } private set { this.bPrice = value; } } 文件,并将Book属性添加到其types.d.ts

这将允许TS访问您的lib导出的所有类型。

但是,您将需要手工编写这些类型。

更好的解决方案是让TS为您生成那些types: "./types.d.ts"文件。 您可以通过在package.json文件中启用d.ts来实现。