繁体   English   中英

使用TypeScript中的JavaScript导入扩展

[英]Use extension from JavaScript import in TypeScript

我正在尝试在TypeScript项目中使用dynamo-cache npm模块。 基本上,该模块会向AWS.DynamoDB.DocumentClient添加一个新方法:

AWS.DynamoDB.DocumentClient.prototype.configCache = function(config) { ... }

这样,在任何AWS.DynamoDB.DocumentClient上调用configCache()将启用缓存。 但是, TypeScript不知道此方法。 我试图声明一个这样的接口

interface AWS.DynamoDB.DocumentClient {
    configCache(config: any): void
}

但是TypeScript拒绝了解DynamoDB或者接口声明中不允许使用点号。 另外,当我声明具有相同名称的接口时,显式导入DocumentClient也会导致冲突。 我该如何进行这项工作?

根据您使用的模块系统,它可能会有所不同,但是声明全局可能是您要查找的内容: 声明合并

declare global {
    namespace AWS.DynamoDB
    {
        interface DocumentClient {
            configCache(config: any): void
        }
    }
}

您可能必须省略AWS.DynamoDB,无法真正验证代码atm。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM