使用打字稿中的d.ts扩展外部模块

时间:2014-11-05 21:11:23

标签: node.js express typescript amd

我正在使用typescript构建一个nodejs应用程序。我使用了几个外部库,如express.js。尽可能多,这个库设计得可扩展。

我想通过添加自定义方法来扩展它。这样做的打字稿最佳做法是什么?

我想从它继承一个类,但它的d.ts并没有定义任何类(显然)。我可以扩展界面:

declare module Express {
    export interface Application {
        foo();
    }
}

但我无法弄清楚如何实际实现它。

任何帮助都将不胜感激。

1 个答案:

答案 0 :(得分:0)

您不应该直接将成员添加到Application ,除非您希望创建一个其他人应该使用的可重用库。如果确实如此,则需要进行函数拦截(http://basarat.github.io/this-and-prototype/#/apply)。

我建议只做一个实用功能。