打字稿:定义文件中的扩展模块

时间:2016-08-06 19:14:18

标签: typescript typescript1.8

鉴于this definition file,有人可以向我确认,由于未导出名称空间,因此无法扩展导出的Request接口吗?如果有可能,我会感谢正确方向的任何提示:)

我在index.d.ts中尝试了以下操作,但没有成功:

declare module 'koa' {
    namespace Koa {
        export interface Request {
            body: string;
        }
    }
}

谢谢你,罗宾

1 个答案:

答案 0 :(得分:0)

可以扩展它,你只需要重做整个模块声明就可以了。

koa.d.ts:

declare module 'koa' {
    namespace Koa {
        export interface Request {
            body: string;
        }
    }
}

someOtherFile.d.ts:

declare module 'koa' {
    namespace Koa {
        export interface Request {
            head: string;
        }
    }
}

useIt.ts:

import {Koa} from 'koa';

let x : Koa.Request;

x.head;  // works just fine