我试图弄清楚如何扩展@types/cesium
,但是它要么抱怨我在情况(a)中有重复的类型定义,要么抱怨找不到其他Cesium类型定义( b)。
请注意,index.d.ts是原始类型Rectangle
所在的位置,它不完整,我想扩展。
情况(a)
错误:标识符重复'Rectangle'。 ts(2300)
index.d.ts(1322, 11):此处也声明了“矩形”。 *
export as namespace Cesium;
declare namespace Cesium {
class Rectangle {
static fromCartesianArray(cartesians: Array<Cesium.Cartesian2>, ellipsoid: Cesium.Ellipsoid, result?: Cesium.Rectangle): Cesium.Rectangle;
}
}
情况(b)
错误:命名空间'... Cesium'没有导出的成员'Cartesian2'。 ts(2694)
export namespace Cesium {
class Rectangle {
static fromCartesianArray(cartesians: Array<Cesium.Cartesian2>, ellipsoid: Cesium.Ellipsoid, result?: Cesium.Rectangle): Cesium.Rectangle;
}
}
答案 0 :(得分:0)
任何两个元素之间的合并都不起作用this描述了可以合并的内容。
如果要合并一个类以添加更多静态方法,则需要使用类名空间合并:
namespace Cesium {
export namespace Rectangle {
function fromCartesianArray(cartesians: Array<Cesium.Cartesian2>, ellipsoid: Cesium.Ellipsoid, result?: Cesium.Rectangle): Cesium.Rectangle;
}
}