我在Angular中使用CesiumJs,并在我的应用中安装了@ types / cesium。
CesiumJs目前无法正确处理这样的导入,并且他们不建议以这种方式导入,而且我也不想在我的每个文件中导入Cesium只是为了获得所有方法=>
import * as Cesium from 'cesium';
相反,我们必须声明如下=>
declare var Cesium;
使应用程序假定包在此处,然后进行编译。
问题是,我已经下载了@ types / cesium,我想将Cesium的类型应用于我声明的变量,以便应用程序知道Cesium也存在,而且还有它的类型。
当我导入铯(使用导入)时,类型是这样分配的:
(别名)命名空间Cesium导入Cesium
所以我想将名称空间分配为我的类型
declare var Cesium: typeof Cesium;
但我知道
“铯”以其自身类型直接或间接引用 注释。
所以我尝试用
修复type CesiumType = typeof Cesium;
declare var Cesium: CesiumType;
但是现在我得到了
类型别名“ CesiumType”循环引用自身。
问题是名称必须为铯,否则将不起作用。
如何正确将类型应用于变量?