此后:=> https://cesium.com/blog/2018/03/12/cesium-and-angular/
我在输入时有一个全局变量。d.ts=>
declare var Cesium;
我的tsConfig包含=>
"typeRoots": [
"node_modules/@types",
"./src/typings.d.ts"
],
现在,在我的指令中,我有以下内容
import { Directive, ElementRef, OnInit, Input, Output} from '@angular/core';
import * as CesiumLib from '../libs/cesium.lib';
@Directive({
selector: '[appCesium]'
})
export class CesiumDirective implements OnInit {
@Input() appCesiumOptions: CesiumLib.CesiumViewerOptions;
@Output() appCesiumViewer: Cesium.Viewer;
constructor(private el: ElementRef) {
Cesium.Ion.defaultAccessToken = CesiumLib.CESIUM_ACCESS_TOKEN;
}
ngOnInit() {
const appCesiumViewer = new Cesium.Viewer(this.el.nativeElement, this.appCesiumOptions);
}
}
线
const appCesiumViewer = new Cesium.Viewer
工作正常,没有错误,但行
@Output() appCesiumViewer: Cesium.Viewer;
给我以下内容
找不到命名空间'Cesium'。
我也尝试构造一个结构,但是我有相同的错误
我在做什么错?
答案 0 :(得分:0)
导出已声明的模块
export declare var Cesium;
答案 1 :(得分:0)
以下内容对我有用。
首先,例如安装软件包。
npm install moment --save
然后,要解决缺少适当的导出的问题:
从*时刻开始导入*;
注意:import * as moment from 'moment';
格式很重要
import * as aliasname from 'packagename';