Pic*_*cci 7 typescript typescript-typings
我导入了一个库mycoollib,该库驻留在其中node_modules并具有以下文件夹和文件结构
node_modules
- mycoollib
- src
mycoollogic.js
- types
index.d.ts
Run Code Online (Sandbox Code Playgroud)
,其中index.d.ts包含 的类型定义mycoollib,是这样的
/// <reference types="node" />
export type MyCoolType = {
func1: () => void
func2: () => void
}
Run Code Online (Sandbox Code Playgroud)
在我的应用程序中,我需要增强MyCoolType类型定义,例如添加第三个函数。所以我像这样在我的文件夹中创建my-cool-type-augmentation.d.ts文件src
declare namespace mycoollib {
export type MyCoolType = {
augmentedFunction: () => void
}
}
Run Code Online (Sandbox Code Playgroud)
但这个解决方案似乎不起作用,因为当我尝试augmentedFunction在 类型的对象上使用时,编译器会发出一个问题信号MyCoolType。
我也尝试过使用模块声明,如下所示
declare module "mycoollib" {
export type MyCoolType = {
augmentedFunction: () => void
}
}
Run Code Online (Sandbox Code Playgroud)
但在这种情况下,编译器会发出信号,表明和中存在重复标识符“MyCoolType”错误。在我必须增强接口但似乎不适用于类型的其他情况下,此解决方案适用于我。index.d.tsmy-cool-type-augmentation.d.ts
| 归档时间: |
|
| 查看次数: |
3695 次 |
| 最近记录: |