Как сделать данные GeoJSON недоступными для редактирования через leaflet.pm - PullRequest
0 голосов
/ 01 апреля 2019

У меня есть файл geojson, и я получаю его с помощью ajax. но я хочу предотвратить редактирование геометрии, загружаемой при запуске. Только те, которые добавлены с leaflet.pm, должны быть доступны для редактирования. Как я могу это сделать?

leaflet.pm

Я использую координату геойсона json. эти чертежи добавляются на карту при загрузке страницы.

{pmIgnored: true} после попытки удалить режим удаления, когда я нажимаю на один из статических рисунков, которые я добавил из geojson, удаляет их все. Как я могу предотвратить это?

var geojsonData;
// addded geojson ajax
$.getJSON("geo.json", {
  async: false,
}, function (data) {
  geojsonData = L.geoJson(data, {
    pmIgnore: true, // ignore static shaped edited
    style: {
      weight: 20
    },
  }).addTo(map);
});

я хочу не удалять статические координаты при включенном режиме удаления

Ответы [ 2 ]

1 голос
/ 28 апреля 2019

Я Sumit, сопровождающий leaflet.pm

Я думаю, произошла ошибка в отношении игнорирования слоев через pmIgnore: true в режиме глобального удаления.В этом выпуске должно быть исправлено .Пожалуйста, протестируйте версию 2.0.3 или новее и дайте мне знать, если она работает.

Если у вас все еще возникают проблемы, не стесняйтесь сообщить об этом здесь с JSFiddle, показывающим проблему, и ярад помочь / исправить это.

0 голосов
/ 01 апреля 2019

Примените параметр pmIgnore не к группе, а к каждому отдельному слою листовки. Сделайте это с опциями style и pointToLayer L.GeoJSON, например ::10000*

  geojsonData = L.geoJson(data, {
    style: {
      pmIgnore: true,
      weight: 20
    },
  })
...