传单标记应正确加载。 相反,我收到此错误消息:
GET http://localhost :8080/bower_components/leaflet/dist/imagesmarker-icon-2x.png 404(未找到)
但该 URL 是错误的,因为它缺少“图像”和“marker-icon-2x.png”之间的斜线
它应该用斜杠格式化。 如果我进入 Leaflet 源并更改 IconDefault 选项,使其看起来像这样(第 6976 行...):
iconUrl: '/marker-icon.png',
iconRetinaUrl: '/marker-icon-2x.png',
shadowUrl: '/marker-shadow.png',
然后它按预期工作。
如果我恢复到 0.7.7,那么这个问题就会消失。 是什么导致了这个问题?
实际上,更好的解决方法是设置 L.Icon.Default.imagePath 以确保路径包含最后的斜杠。 我想在这一点上,只是想知道为什么这似乎发生了变化?
也许这与我刚刚遇到的问题有关。 标记未加载(它尝试加载为 base 64)。
@types/leaflet
使用 Angular CLI 设置项目。对我来说,Leaflet 库将图标加载为 Base 64:
<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB[CUT_FOR_BREVITY]ASUVORK5CYII=")marker-icon.png" class="leaflet-marker-icon leaflet-zoom-animated leaflet-interactive" tabindex="0" style="margin-left: -12px; margin-top: -41px; width: 25px; height: 41px; transform: translate3d(225px, 197px, 0px); z-index: 197; outline: none;">
src
字段在末尾包含")marker-icon.png
,这会导致图像无法加载为无效的 base64。 如果我在 Chrome 检查器中删除它,图标会正常显示。
大家好,感谢举报。 我很确定您所描述的问题与#4968 相同,因此我将其作为重复项关闭。 如果您认为这是另一个问题,请告诉我,我会考虑重新开放。
最有用的评论
也许这与我刚刚遇到的问题有关。 标记未加载(它尝试加载为 base 64)。
如何繁殖
@types/leaflet
使用 Angular CLI 设置项目。我期待什么样的行为以及我看到什么样的行为
对我来说,Leaflet 库将图标加载为 Base 64:
src
字段在末尾包含")marker-icon.png
,这会导致图像无法加载为无效的 base64。 如果我在 Chrome 检查器中删除它,图标会正常显示。