gpt4 book ai didi

typescript :覆盖先前声明的变量

转载 作者:搜寻专家 更新时间:2023-10-30 21:57:02 26 4
gpt4 key购买 nike

我正在处理 Typescript 声明文件,库中的一种类型称为“图像”,如下所示。

declare class Image {
static fromData(data: Data): Image;
static fromFile(filePath: string): Image;
}

不幸的是,我收到一条错误消息,指出“图像”是重复的标识符,我无法使用它。

../../../../usr/local/lib/node_modules/typescript/lib/lib.dom.d.ts:16908:13 - error TS2300: Duplicate identifier 'Image'.

16908 declare var Image: {
~~~~~

index.d.ts:2:15
2 declare class Image {
~~~~~
'Image' was also declared here.

有什么方法可以覆盖之前的声明(它甚至不是类型,只是 HTMLImageElement 的构造函数)并重新调整用途吗?谢谢

最佳答案

这就是为什么您应该始终更喜欢导出类型而不是环境类型(全局,存储在 *.d.ts 文件中)的原因。

只需创建一个文件,例如具有以下内容的 types.ts

export class Image {
static fromData(data: Data): Image;
static fromFile(filePath: string): Image;
}

然后像往常一样导入它 import {Image} from './types'

如果仍然有冲突,你可以这样做 import {Image as MyImage} from './types'

关于 typescript :覆盖先前声明的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53347615/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com