我为您准备了一个非常简单的React / Leaflet演示,但标记图标根本没有显示。
完整的运行代码在这里。
这是我的
基本上,弹出窗口是可见的,但标记图标本身不可见。即,这是我所看到的内容:
这是我的
componentDidMount
方法中的内容:componentDidMount() {
this.map = L.map("map-id", {
center: [37.98, 23.72],
zoom: 12,
zoomControl: true
});
const mapboxAccessToken =
"pk.eyJ1IjoibXBlcmRpa2VhcyIsImEiOiJjazZpMjZjMW4wOXJzM2ttc2hrcTJrNG9nIn0.naHhlYnc4czWUjX0-icY7Q";
L.tileLayer(
"https://api.mapbox.com/styles/v1/{id}/tiles/{z}/{x}/{y}?access_token={accessToken}",
{
attribution:
'Map data © <a href="https://www.openstreetmap.org/">OpenStreetMap</a> contributors, <a href="https://creativecommons.org/licenses/by-sa/2.0/">CC-BY-SA</a>, Imagery © <a href="https://www.mapbox.com/">Mapbox</a>',
maxZoom: 25,
id: "mapbox/streets-v11",
accessToken: mapboxAccessToken
}
).addTo(this.map);
L.marker([37.98, 23.72])
.addTo(this.map)
.bindPopup("a marker")
.openPopup();
}
基本上,弹出窗口是可见的,但标记图标本身不可见。即,这是我所看到的内容:
![enter image description here](https://istack.dev59.com/Q5gdD.webp)
<img src='data:image/png;base64, ... GgIwYdwAAAAASUVORK5CYII=")marker-icon.png'
。在浏览器调试器中删除后缀")marker-icon.png
可以使图标显示出来,但我不知道它来自哪里。此外,图标周围有一个空方框,可能表示缺少的阴影。 - Qwertie