Angular Cli-找不到Dojo模块
我正在用Argis4.8JSAPI开发一个angular应用程序。我需要Dojo/On函数。我也没有在编译器中得到错误。但是当我编译时,我得到了错误“modulenotfound:error:cannotresolve'dojo/on'path”。我不能使用Dojo类。我该怎么办 我的完整代码Angular Cli-找不到Dojo模块,angular,dojo,arcgis,typescript-typings,esri,Angular,Dojo,Arcgis,Typescript Typings,Esri,我正在用Argis4.8JSAPI开发一个angular应用程序。我需要Dojo/On函数。我也没有在编译器中得到错误。但是当我编译时,我得到了错误“modulenotfound:error:cannotresolve'dojo/on'path”。我不能使用Dojo类。我该怎么办 我的完整代码 从'@angular/core'导入{Component,OnInit,ViewChild,ElementRef,Input,Output,EventEmitter}; 从“esri加载程序”导入{loa
从'@angular/core'导入{Component,OnInit,ViewChild,ElementRef,Input,Output,EventEmitter};
从“esri加载程序”导入{loadModules};
导入esri=uu esri;
导入on=require('dojo/on');
函数executeIdentifyTask(事件:事件|未定义){
console.log(事件);
}
@组成部分({
选择器:“应用程序esri映射”,
templateUrl:'./esri map.component.html',
样式URL:['./esri-map.component.css']
})
导出类EsriMapComponent实现OnInit{
@ViewChild('mapViewNode')私有mapViewEl:ElementRef;
构造函数(){
}
map:esri.map;
地图视图:esri.mapView;
图层:esri.MapImageLayer;
IdentificationTask:esri.IdentificationTask;
异步初始化映射(){
试一试{
常量[EsriMap、EsriMapView、MapImageLayer、IdentifyTask、IdentifyTaskProperties]=等待加载模块([
“esri/Map”,
“esri/views/MapView”,
“esri/layers/MapImageLayer”,
“esri/tasks/IdentificationTask”,
“esri/任务/支持/识别参数”
]);
this.map=新EsriMap({
底图:“深灰色”
});
this.mapView=new EsriMapView({
容器:this.mapViewEl.nativeElement,
中间:[27.1428,38.4237],
缩放:15,
地图:这是地图
});
this.layer=新的MapImageLayer(
{url:'https://sampleserver6.arcgisonline.com/arcgis/rest/services/Census/MapServer'});
this.map.add(this.layer);
this.mapView.when(函数(){
打开(this.mapView,'click',executeIdentifyTask);
});
}捕获(错误){
log('我们有一个错误:'+错误);
}
}
恩戈尼尼特(){
这个.initializeMap();
}
}
我知道我来晚了一点,但对于其他有类似问题的人,我发现这些错误通常是由于没有将类型放入类型:[]中而导致的,这些错误被描述为可以按F12键查找类型,但无法正确编译tsconfig.app.json中的数组
我在导入\uu esri
时遇到了类似的问题,并在src/app/esri map/esri map.component.ts(16,15)中不断收到以下错误错误:错误TS2503:找不到命名空间“\uu esri”。
并且在我的tsconfig.app.json
中添加arcgis js api”
后,我的问题解决了。您不应该像从“dojo”导入{on}一样导入它吗?
?是的,我试过了。但我犯了这个错误。TS2305:模块“dojo/on”没有导出的成员“on”。请在安装dojo typings
模块后尝试相同的操作,而不是使用参考//
?我安装了模块。编译器似乎也没有问题。我也可以在按下F12键时转到该功能。但我在编译时出错。请尝试在script
中添加index.html
tag中的.js