You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Nuxt-Gmaps中正确配置本地clusterStyle图标?

解决Nuxt-Gmaps本地clusterStyle图标加载问题

直接使用~/assets路径无法被Google Maps API正确识别,因为该别名是Webpack的内部别名,浏览器无法解析,且assets目录下的资源在构建时会被哈希处理,路径会发生变化。以下是正确的配置方式:

方法1:使用require导入资源路径(适用于Nuxt 2/3)

在组件的data中通过require获取编译后的正确图标路径:

export default {
  data() {
    return {
      clusterStyle: [
        {
          url: require('~/assets/img/map_cluster.svg'),
          width: 48,
          height: 48,
          textColor: "#000"
        }
      ]
    }
  }
}

方法2:使用ES模块导入(适用于Nuxt 3)

通过ES模块导入方式获取资源路径:

import clusterIcon from '~/assets/img/map_cluster.svg'

export default {
  data() {
    return {
      clusterStyle: [
        {
          url: clusterIcon,
          width: 48,
          height: 48,
          textColor: "#000"
        }
      ]
    }
  }
}

为什么static目录不是最佳实践?

  • static目录下的文件不会经过Webpack处理,不会添加哈希后缀,不利于浏览器缓存更新
  • 若项目部署在子路径下,static资源的路径可能出现适配问题
  • assets目录的资源会被Webpack优化处理,支持自动路径适配和缓存控制

内容的提问来源于stack exchange,提问作者Dollique

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 16:45:53