问题标签 [esri-loader]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
typescript - 为什么在 Typescript 中可以通过名称访问 .then() 中的数组元素?
我已经开始将我们的 ArcGis JS 模板集成到我们正在使用的 webpack 构建管道中。
为了实现这一点,我们需要稍微重构一下 quiet 并需要开始使用 Esri-Loader ( https://github.com/Esri/esri-loader ),它本质上将 dojos 的 require 函数包装到一个 Promise 中。
一个非常简单的示例如下所示:
起初我尝试编写这样的调用.then()
:.then((Map, MapView, Basemap) => { ... }
,但收到以下编译器错误:
'(Map: any, MapView: any, Basemap: any) => void' 类型的参数不可分配给 '(value: any[]) => void | 类型的参数 许诺”。
好的,所以签名不加起来:
所以正确的方法是像上面这样:.then(([Map, MapView, Basemap]) => { ... }
而此时我的理解已经到了极限。在下面的方法主体中,我可以调用它们的名字Map
,MapView
而BaseMap
我希望这是一个数组,我必须像 javascript-ish 一样访问它Arguments[0][0]
,Arguments[0][1]
依此类推,因为我确实只传入了一个对象类型Array<any>
。
请向我解释为什么以及如何做到这一点,或者我在这里做错了什么。
vue.js - 将 esri-loader 导入 nativescript
我正在尝试将 esri-loader 导入我的 nativescript vue 应用程序并显示一个简单的地图,但出现错误。下面是我的代码
我的错误如下
有没有人在本机脚本中成功加载了 esri-loader 和地图?
angular - Internet Explorer 中的 arcgis js API 4.7 错误-“未检测到本机 wasm 支持”
我在 Angular 6 应用程序中使用 ArcGIS JS API 4.7。
并使用 esri-loader 在我的角度服务/组件中访问 esri 方法
使用以下版本..
似乎 esri 在 webassembly 中实现了部分 js 方法。因此浏览器使用以下文件
这专门用于 JsonUtils.fromJson() 方法
该代码似乎在其他浏览器中运行良好,但是我在所有版本的 IE 中都出现错误,包括 Edge
在 IE 11.2791.12 中测试
边缘 38.14393.2068.0
以下是我的代码
以下是错误
过去有人遇到过吗?
angular - 如何让 esri 地图视图使用 Angular 8 中的服务进行更改?
当您到达滚动间谍中的另一张幻灯片时,我正在尝试更改地图。我无法从服务中获取一个数字以用作数组的索引。我把这个项目放在了stackblitz上。这是 app.component.ts
这是html
这就是服务
javascript - mapkitJS 和 ArcGIS esri-loader 的 dojo multipleDefine 错误
我不知道哪里MapkitJS
有esri-loader
问题,在一起有问题。从这里和其他地方的研究来看,似乎与另一个包可能存在命名冲突。这是已解决问题的链接esri-loader
。我阅读了该链接上的所有页面。
我有一个同时使用MapkitJs
和的网站ArcGIS
。Mapkit
在我带进来之前一直工作得很好ArcGIS
。这两个脚本都是通过提供者延迟加载的。在阅读了这些问题之后,我等到Mapkit
被初始化后再加载ArcGIS
脚本。
我注意到的第一件事是旋转地图的能力Mapkit
立即消失了(它加载,然后在大约 1/2 秒后将其删除)。那是我第一次暗示有些事情是矛盾的。
如果我删除加载脚本esri-loader
的 call loadModules
,则旋转再次起作用。如果我再次添加它(即使我没有指定要添加的任何模块),它也会中断Mapkit
旋转。
这是主要问题。如果我先创建mapkit
地图,然后尝试创建 ArcGIS 地图,则会弹出错误。但是如果我先创建一个ArcGIS地图,然后再创建mapkit,就可以了(除了apple mapkit地图不能旋转)。
我希望我能提供更多信息,但我什至不知道从哪里开始。请问你需要什么...
我上传了一个演示页面到我的网站。如果您访问https://dieselplanning.com/,它将首先加载 Esri 地图。它有效,您可以切换地图(侧边栏中的左下按钮)。您还将在苹果地图上看到右下角的罗盘上升一秒钟,因为它接受旋转,然后在创建后不久决定不旋转。
但是,如果您访问https://dieselplanning.com/test,它与页面完全相同ao
,但它首先会创建一个 mapkit 地图。这会在您交换地图时产生问题。
angular - Angular ArcGIS esri-loader 中的geographicToWebMercator 和投影多边形
如何在 Angular 10 中使用“geographicToWebMercator”来绘制具有环值的多边形。我指的是文档中提供的示例, https://developers.arcgis.com/documentation/core-concepts/features-and-geometries/#polygons 并尝试将Angular中的功能与ArcGIS esri-loader一起使用。这是我所指的文档。 https://developers.arcgis.com/javascript/latest/guide/angular/
我试图获得投影的多边形点。但返回错误的值。
/更新代码*****/
angular - 刷新 Angular 10 ESRI 地图上的图层而不刷新整个地图
我在 Angular 10 中创建了一个 Esri 地图。用户可以从组按钮中选择地图上的图层。所以输入将是一个数组,例如:['0','1','2']。数字是地图图层编号。所有这些功能都运行良好,但我必须在不刷新整个地图的情况下添加图层。请在下面找到代码。
函数“onLayerChange()”来自组按钮。一旦触发事件,然后调用“ngOnInit()”,它会加载带有所选图层的地图。但是我们怎样才能只加载图层,而不是整个地图呢?谢谢。
angular - 在 Angular 10 中单击地图时获取图层的详细信息及其详细信息
在 Angular 10 中点击 ArcGIS 地图时,我们如何获取图层的详细信息。点击事件在地图上触发。例如:显示门牌号码的地图。在地图上单击其中一个门牌号时,我们如何获得门牌号。我必须在我的代码中使用“门牌号”来实现其他功能。
/更新代码/
我收到错误消息“未捕获的类型错误:无法读取未定义的属性 '_view'”
angular - ArcGIS 4.16 Angular中内容的弹出模板自定义功能
我正在尝试从服务返回的结果中在弹出模板中添加自定义内容。服务功能在 ngOninit() 或不属于弹出模板功能的自定义功能中工作。在弹出自定义模板功能中使用时,服务无法收集结果。
请在下面找到代码(仅包含主要部分),导入自定义服务。
形成要素层,弹出窗口应来自该层。
下面的函数 getcustomcontent() 从服务中收集详细信息。
当我使用 try-catch 时,它显示'TypeError:无法读取属性'customService' of null'。如何在弹出模板中使用服务?