我正在尝试将esri-loader导入我的nativescript vue应用中,并显示一个简单的地图,但出现错误。以下是我的代码
<script>
import * as esriLoader from 'esri-loader'
export default {
name: 'myMap',
mounted: function () {
esriLoader.loadModules(['esri/map'])
.then(([Map]) => {
// create map with the given options
const map = new Map(this.$refs.map, {
center: [-56.049, 38.485],
zoom: 3,
basemap: 'gray',
});
})
.catch(err => {
// handle any script or module loading errors
console.error(err);
});
}
}
</script>
我的错误在下面
JavaScript error:
file:///app/vendor.js:173:29: JS ERROR ReferenceError: Can't find variable: window
(CoreFoundation) *** Terminating app due to uncaught exception 'NativeScript
encountered a fatal error: ReferenceError: Can't find variable: window
有人用本机脚本成功加载了esri-loader和地图吗?
答案 0 :(得分:1)
否,由于它依赖于浏览器,因此不能在nativescript应用中使用。该库没有任何外部依赖关系,但是它提供的用于加载ArcGIS API及其模块的功能希望可以在浏览器中运行。
尽管您可以声明为全局但esri不会渲染它寻找浏览器元素和承诺的地图,从而避免出现“找不到窗口”错误。
但是您可以在服务器上呈现的其他应用程序中使用此库。作为参考,您可以访问here。