Nuxt3集成HERE Maps JS API时启用HARP引擎报错求助
问题描述
我正在Nuxt 3项目中切换使用HARP引擎,采用最新版本的HERE Maps JavaScript API(1.61.2),已定义并配置了如下Here Maps Nuxt插件:
export default defineNuxtPlugin( () => { return { provide: { H: HereMap, } } })
并将其添加至配置文件中。在.vue文件内按照文档初始化地图时,使用EngineType HARP:
let maptypes = platform.value.createDefaultLayers({ lg: getLocaleLanguage(props.locale), lg2: "en", engineType, });
但始终报错:
InvalidArgumentError: H.service.Platform#Xl (Argument #0 HARP engine is not supported, module not found)
请问HARP引擎不应已包含在我的插件中吗?
解决方案
- HARP引擎并非HERE Maps JavaScript API基础包的默认组件,必须单独引入对应模块
- 需在Nuxt配置中添加HARP引擎的CDN脚本,示例配置如下(
nuxt.config.ts):
export default defineNuxtConfig({ app: { head: { script: [ { src: 'https://js.api.here.com/v3/3.1/mapsjs-core.js', async: true }, { src: 'https://js.api.here.com/v3/3.1/mapsjs-service.js', async: true }, { src: 'https://js.api.here.com/v3/3.1/mapsjs-harp.js', async: true } ] } } })
- 检查插件中
HereMap的来源:如果是局部导入的模块,需确认其包含HARP引擎代码;直接使用CDN加载完整API更不易出错 - 验证
engineType的取值,确保使用H.Map.EngineType.HARP枚举值,而非自定义字符串或错误标识
内容的提问来源于stack exchange,提问作者Jaisy
相关产品推荐
相关产品推荐

