javascript - 由于 ERR_INVALID_URL 错误,传单 JS 中的标记无法正确加载

标签 javascript vuejs2 leaflet

我正在尝试向我的传单 map 添加标记,但它们没有出现。

在控制台中,我看到一个网络错误:net::ERR_INVALID_URL 用于加载如下图像的 http 请求:

Request URL: data:image/png;base64,iVBORw0KGgoAA.....SUVORK5CYII=")marker-icon-2x.png

如果我删除 URL 的最后一部分
)marker-icon-2x.png

我最终得到了正确的 base64 编码图像。所以我想问题是在 URL 的末尾添加了什么标记图标。

更多背景:
  • 我的代码如下所示:
  • L.marker(coords).bindPopup(someName).addTo(this.map)
    
  • 我的 map 渲染正确,我可以在上面绘制多边形等等。
  • 我正在使用 Vue 和 Vue2Leaflet
  • 我已经导入了leaflet.css
  • 我试图在没有效果的情况下包含这些代码行:
  • delete Icon.Default.prototype._getIconUrl
    
    Icon.Default.mergeOptions({
      iconRetinaUrl: require('leaflet/dist/images/marker-icon-2x.png'),
      iconUrl: require('leaflet/dist/images/marker-icon.png'),
      shadowUrl: require('leaflet/dist/images/marker-shadow.png')
    });
    

    最佳答案

    这有效:

    import L from 'leaflet';
    delete L.Icon.Default.prototype._getIconUrl;
    
    L.Icon.Default.mergeOptions({
        iconRetinaUrl: require('leaflet/dist/images/marker-icon-2x.png').default,
        iconUrl: require('leaflet/dist/images/marker-icon.png').default,
        shadowUrl: require('leaflet/dist/images/marker-shadow.png').default,
    });
    

    关于javascript - 由于 ERR_INVALID_URL 错误,传单 JS 中的标记无法正确加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55928916/

    相关文章:

    javascript - Openlayers 3 性能指标

    javascript - CrmRestKit 与 XrmServiceToolkit

    javascript - 制作新圆标记时删除圆标记

    javascript - this.$root.$emit 在 Vue 中不起作用

    javascript - 为什么我在 osm 中收到此错误?

    ruby - ActiveAdmin 索引作为 Leaflet 映射

    javascript - 如何在将 html 附加到元素时不丢失 css?

    Javascript:数组加数字

    javascript - 在 Vue.js 2.0 中将数组传递给组件

    javascript - Vue.js 如何在实例上定义方法