相关疑难解决方法(0)

覆盖Typescript d.ts文件中定义的覆盖接口属性类型

有没有办法更改*.d.tsintype中定义的接口属性的类型?

例如:接口in x.d.ts定义为

interface A {
  property: number;
}
Run Code Online (Sandbox Code Playgroud)

我想在我写的typescript文件中更改它

interface A {
  property: Object;
}
Run Code Online (Sandbox Code Playgroud)

甚至这会起作用

interface B extends A {
  property: Object;
}
Run Code Online (Sandbox Code Playgroud)

这种方法会起作用吗?当我尝试使用我的系统时,它无法正常工作.只是想确认它是否可能?

javascript typescript typescript-typings

60
推荐指数
14
解决办法
6万
查看次数

如何在TypeScript中覆盖类型属性

例如,我有

type Line = {
  start: Point;
  end: Point;
  color: string; //'cyan'/'aquablue'/...
}
Run Code Online (Sandbox Code Playgroud)

但是现在我想在Line的基础上创建新的线型,以便将颜色存储为数字:

type HexColorLine = Point & {
  color: number;
}
Run Code Online (Sandbox Code Playgroud)

现在我希望HexColorPoint类型等于

{
  start: Point;
  end: Point;
  color: number;
}
Run Code Online (Sandbox Code Playgroud)

但这等于

{
  start: Point;
  end: Point;
  color: string | number;
}
Run Code Online (Sandbox Code Playgroud)

有没有一种方法可以使用一些简短的语法覆盖但不扩展prop类型?我真的需要为此定义全新的类型吗?

typescript

4
推荐指数
5
解决办法
2675
查看次数