一旦視圖使我得到這個錯誤,並彈出沒有添加 -setLngLat()setPopup不是函數
mapbox-gl.js:176 TypeError: (intermediate value).setLngLat(...).setPopup is not a function(…)
有誰遇到這樣或知道的東西來解決這一問題?
代碼是這樣設置彈出了標記,我已經按照這個鏈接https://www.mapbox.com/mapbox-gl-js/example/set-popup/
let tpl;
if (vendor.get('cachedAverageRating')) {
tpl = `
<div class='ui map-marker'>
<div class="photo">
<img src="${vendor.getAvatar() || FIXTURE_IMAGE}"></div>
<div class="ui violet counter">${vendor.get('cachedAverageRating')}</div>
</div>
`;
} else {
tpl = `
<div class='ui map-marker'>
<div class="photo">
<img src="${vendor.getAvatar() || FIXTURE_IMAGE}">
</div>
</div>
`;
}
let markerContainer = document.createElement('div');
markerContainer.innerHTML = tpl;
// create the popup
let markerPopup = new MapboxGL.Popup({offset: 25})
.setHTML(`<div>Name : ${vendor.get('name')}, Address : ${vendor.get('address')}, Rating : ${vendor.get('cachedAverageRating')}</div>`);
// create the marker
new MapboxGL.Marker(markerContainer, {offset:[-25, -25]})
.setLngLat([get(vendor, 'lon'), get(vendor, 'lat')])
.setPopup(markerPopup) // sets a popup on this marker
.addTo(map);
MapboxGL是正確的。在我的情況下,我已初始化 var MapboxGL = window.mapboxgl; 然後使用MapboxGL。 –
你想給我們更多有關你的「供應商」變量的信息嗎? – zibethin