修复 "Can't find variable: mapboxgl" 问题

Fixing "Can't find variable: mapboxgl" Issue

我一点也不擅长 JS,但是在按照 MAPBOX 网站上的示例进行操作后,我根本无法渲染地图。代码与网站上的完全一样。显示的唯一错误 Can't find variable: mapboxgl。在研究了这个之后,我还没有发现任何关于这个的东西。我做错了什么?

我的代码:

<script>
mapboxgl.accessToken = '<? print $mapboxapi; ?>';
var map = new mapboxgl.Map({
container: 'map',
style: 'mapbox://styles/mapbox/streets-v11', // stylesheet location
center: [<? print $SQL["long"] ?>, <? print $SQL["lat"] ?>], // starting position [lng, lat]
zoom: 9 // starting zoom
});
         
var marker = new mapboxgl.Marker()
.setLngLat([<? print $SQL["long"] ?>, <? print $SQL["lat"] ?>])
.addTo(map);
</script>

这会呈现这段代码:

<script>
mapboxgl.accessToken = 'xxxxxxxxxxxxxxxxxxxxxxxx';
var map = new mapboxgl.Map({
container: 'map',
style: 'mapbox://styles/mapbox/streets-v11', // stylesheet location
center: [-00.00000, 00.000000000], // starting position [lng, lat]
zoom: 9 // starting zoom
});
                                                    
var marker = new mapboxgl.Marker()
.setLngLat([-00.00000, 00.000000000])
.addTo(map);
</script>

您可能没有在 <head> 部分中包含必要的脚本和 CSS 文件。这些位:

<script src="https://api.mapbox.com/mapbox-gl-js/v1.12.0/mapbox-gl.js"></script>
<link href="https://api.mapbox.com/mapbox-gl-js/v1.12.0/mapbox-gl.css" rel="stylesheet" />