Повторно использовать существующий экземпляр карты для директивы Leaflet
Я пытаюсь добавить функциональность Leaflet Editable к моей текущей карте, карта которой создается директивой leaflet. Я получаю экземпляр L.map с:
leafletData.getMap().then(function(map) {
// where map is the Leaflet map instance
}
Однако редактируемую брошюру необходимо установить editable: true
когда карта создана.
Итак, есть ли способ создать экземпляр L.map
var map = L.map('map', {editable: true});
а затем прикрепить его к угловой директиве листовки?
ОБНОВИТЬ:
Я пытался добавить крючок в Leaflet
L.Map.addInitHook(function () {
this.whenReady(function () {
this.editTools = new L.Editable(this, this.options.editOptions);
console.log('L.map', this);
});
}
Это создает editTools успешно, но
map.editTools.startPolyline();
все еще не работает
2 ответа
Для тех, кто похож на меня, чтобы сделать существующую карту редактируемой
var map = L.map('map', {editable: true});
такой же как
var map = L.map('map');
map.editTools = new L.Editable(map);
Вы пытались добавить editable: true
по умолчанию?
angular.extend($scope, {
defaults: {
editable: true
},
center: {
lat: 51.505,
lng: -0.09,
zoom: 8
}
});
<leaflet defaults="defaults" lf-center="center" height="480px" width="640px"></leaflet>