自定义Mapbox tileset未在Leaflet.js中显示

时间:2016-05-19 21:45:00

标签: javascript leaflet mapbox

我正在为一个圣经营地制作游戏,并且我想使用Leaflet.js作为地图。我正在使用Mapbox创建一个样式。我通过csv上传将罗马和耶路撒冷的坐标导入Mapbox,它们在preview中渲染得很好。但是,它们在通过Leaflet加载时不显示。请参阅以下代码:

<head>
  <title>Race to Rome</title>
   <link rel="stylesheet" href="http://cdn.leafletjs.com/leaflet/v0.7.7/leaflet.css" />
<meta name='viewport' content='initial-scale=1,maximum-scale=1,user-scalable=no' />
</head>

<body>
 <div id="mapid" style="height:500px;"></div>
   <script src="http://cdn.leafletjs.com/leaflet/v0.7.7/leaflet.js"></script>
<h1>Race to Rome</h1>


</body>

<script>

        var mymap = L.map('mapid').setView(L.latLng(34,30), 5);
        L.tileLayer('https://api.mapbox.com/styles/v1/wheelerj/cioerd0vf001yacm7rff4tj5h/tiles/{z}/{x}/{y}?access_token=pk.eyJ1Ijoid2hlZWxlcmoiLCJhIjoiY2lvZXJheTZrMDByNXVsbTNpZXp0c2VnbCJ9.T_jRdbo0CKUgZ2aiuA3kKA', {
            maxZoom: 18,
            attribution: 
                'Imagery &copy;<a href="http://mapbox.com">Mapbox</a>',
            id: 'mapbox.streets'
        }).addTo(mymap);

</script>

我需要做什么才能在Leaflet中包含这些标签?

1 个答案:

答案 0 :(得分:0)

您可能希望使用Mapbox.js(这是为其用户增强的Leaflet fork),并使用其预先构建的功能来处理这样的要素图层。 见下面的例子。

https://www.mapbox.com/mapbox.js/example/v1.0.0/show-marker-as-label/

L.mapbox.featureLayer('MY_FEATURE_LABEL_SET')
    .on('ready', function(e) {
        gj.addData(this.getGeoJSON());
    });