加载带有Wax和传单的本地TileJSON时出现SyntaxError



我有这个TileJSON文件:

{
    "tilejson": "1.0.0",
    "bounds": [ -6.6028, 49.689, 1.9446, 55.943 ],
    "center": [ -1.7029, 52.703, 6 ],
    "minzoom": 6,
    "maxzoom": 15,
    "version": "1.0.0",
    "tiles": [
        "http://localhost:8081/data/oa_belonging_tiles/{z}/{x}/{y}.png"
    ]
}

我正在用这个代码创建一个地图:

<script type="text/javascript">
    wax.tilejson('data/oa_belonging_tiles/metadata.json',
            function(tilejson) {
                var map = new L.Map('map-div')
                        .addLayer(new wax.leaf.connector(tilejson))
                        .setView(new L.LatLng(51, 0), 1);
                wax.leaf.legend(map, tilejson).appendTo(map._container);
            });
</script>

当我在浏览器中执行脚本时,我会得到以下错误:

Uncaught SyntaxError: Unexpected token : metadata.json:2

我遵循了TileJSON规范,在文件中没有发现拼写错误/其他问题。我清除了浏览器缓存,我100%确信我加载的文件是正确的。我尝试过删除一些键/值,但问题仍然存在。

如果有关于如何在本地加载瓷砖的建议,我将不胜感激。

我通过将tilejson存储在一个变量中来实现它。它现在加载瓷砖没有任何问题:

var tilejson = {
        bounds: [-6.6028, 49.689, 1.9446, 55.943 ],
        center: [-1.7029, 52.703, 6],
        maxzoom: 15,
        minzoom: 6,
        scheme: "xyz",
        tilejson: "2.0.0",
        tiles: ["http://localhost:8081/data/oa_belonging_tiles/{z}/{x}/{y}.png"],
        version: "1.0.0"
    };
var map = new L.Map('map')
        .addLayer(new wax.leaf.connector(tilejson))
        .setView(new L.LatLng(53, -1.7), 6);

如果您不反对使用https://www.mapbox.com/,您可以提供更多的磁贴选项。我也遇到了类似的问题,请参阅下面的片段,了解如何替换整个tilejson对象。以下是mapbox的工作原理https://www.mapbox.com/guides/how-mapbox-works/.

编辑:当然,当我还在使用传单时,就像我一样。还使用了更新版本的蜡连接器。http://www.geosprocket.com/mapbox-wax/manual/index.html#downloads

//HTML

     <div id="map"></div>

JS脚本

     L.mapbox.accessToken = 'token';
var map = L.mapbox.map('map','yourmapid')
    .setView([yourlocation], 15);

最新更新