我正在开发一个项目,我们正在为 Node 使用 Stripe 库。我们还想在这个项目上使用 TypeScript。
我发现 Stripe 没有提供官方 TypeScript 定义,但我找到了一些社区定义 @types/stripe在 NPM 上。所以我安装了它们,过了一会儿我收到一个错误:
类型“Stripe”上不存在属性“sources”。
缺少一些定义,例如 stripe.sources
-related functionality .
我想在本地添加缺少的定义。所以我需要扩展这个文件: @types/stripe/index.d.ts
我认为对于上述问题我需要:
- 将属性
sources: Stripe.resources.Sources;
添加到类Stripe
, - 将类
Sources
添加到命名空间resources
, - 将缺少的函数声明添加到类
Sources
中。
问题是我真的不知道该怎么做。带有扩展名的 .d.ts
文件应该是什么样子?我根据一些示例和 TypeScript 文档做了很多尝试,但总是行不通。你有什么想法吗?
最佳答案
我不相信有办法增强导出分配的 Stripe
类;问题类似于this open issue关于增强默认导出的类。此时,由于您无法使用增强,因此您必须为项目创建 @types/stripe
定义,然后您也可以通过这种方式进行所有所需的更改。
关于node.js - Stripe + TypeScript : How to extend @types/stripe definitions for stripe-node?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52295518/