Node.js 用typescript中的d.ts扩展外部模块

Node.js 用typescript中的d.ts扩展外部模块,node.js,express,typescript,amd,Node.js,Express,Typescript,Amd,我正在使用typescript构建一个nodejs应用程序。我正在使用几个外部库,比如express.js。同样多的是,这个库也设计得很好,可以扩展 我想通过添加一个自定义方法来扩展它。这样做的typescript最佳实践是什么 我想从它继承一个类,但它的d.ts没有定义任何类(显然)。我可以扩展接口: declare module Express { export interface Application { foo(); } } 但我不知道如何实际实施它

我正在使用typescript构建一个nodejs应用程序。我正在使用几个外部库,比如express.js。同样多的是,这个库也设计得很好,可以扩展

我想通过添加一个自定义方法来扩展它。这样做的typescript最佳实践是什么

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

declare module Express {
    export interface Application {
        foo();
    }
}
但我不知道如何实际实施它


任何帮助都将不胜感激。

您不应该直接将成员添加到
应用程序
,除非您希望创建一个其他人应该使用的可重用库。如果确实是这样,您将需要函数拦截()


我建议只做一个实用函数。

拦截、混合、实用函数不是面向对象的方法。不是我想要的。如果我假设没有干净的解决方案,那么我是对的吗?如果你想改变
应用程序的工作方式,拦截是一个不错的选择