如何保存并显示Mapbox方向?

时间:2015-09-12 22:48:42

标签: django leaflet gis mapbox

我正在使用Mapbox和Leaflet。 我有一个创建视图,在那里我创建了步行路线。 但我还需要详细视图,我可以在其中显示已创建的路线。

现在我只将originMarker和destinationMarker坐标保存到数据库中;

这样我尝试显示路由:

<script>
        var start = JSON.parse($('#start_field').val());
        var finish = JSON.parse($('#finish_field').val());
        L.mapbox.accessToken = 'qwerty';
    var map = L.mapbox.map('map', 'mapbox.streets', {
        zoomControl: false
    }).setView([42.8580536, 74.6224754], 12);

        L.Routing.control({
            waypoints: [
                L.latLng(start.lat, start.lng),
                L.latLng(finish.lat, finish.lng)
            ]
        }).addTo(map);

        var start_marker = L.marker([start.lat, start.lng], {
            draggable: false
        }).addTo(map);

        var finish_marker = L.marker([finish.lat, finish.lng], {
            draggable: false
        }).addTo(map);
    </script>

但浏览器给我一个错误:

  

未捕获的TypeError:无法读取未定义的属性“control”

1 个答案:

答案 0 :(得分:1)

如果没有完整的代码,它很难回答,但我的第一个猜测是你没有按照正确的顺序加载路由插件的资产(首先是Leaflet脚本然后路由插件,反过来不起作用):

<link rel="stylesheet" href="http://cdn.leafletjs.com/leaflet-0.7.3/leaflet.css" />
<link rel="stylesheet" href="leaflet-routing-machine.css" />
<script src="http://cdn.leafletjs.com/leaflet-0.7.3/leaflet.js"></script>
<script src="leaflet-routing-machine.js"></script>