OpenLayers для чтения / записи GeoJSON - PullRequest
1 голос
/ 30 марта 2020

Я пытаюсь сохранить объекты слоя OpenLayers Map Layer в базе данных, и поэтому я пытаюсь записать объекты объектов в объект Geo JSON. Но я получаю ошибку Unsupported GeoJSON type: undefined при попытке прочитать объект. Вот что я попробовал:

       const testFeature = new Feature({
          geometry: new Point([0, 0]),
          name: 'Test Point '
        });
        const geoJsonObject = new GeoJSON();
        geoJsonObject.writeFeaturesObject(testFeature);
        console.log(geoJsonObject);

        const importObject = new GeoJSON().readFeatures(geoJsonObject);
        console.log(importObject);

Первый журнал "geoJsonObject":

{
  "dataProjection": {
    "code_": "EPSG:4326",
    "units_": "degrees",
    "extent_": [
      -180,
      -90,
      180,
      90
    ],
    "worldExtent_": [
      -180,
      -90,
      180,
      90
    ],
    "axisOrientation_": "neu",
    "global_": true,
    "canWrapX_": true,
    "defaultTileGrid_": null,
    "metersPerUnit_": 111319.49079327358
  },
  "defaultFeatureProjection": null
}

Вот ошибка из журнала importObject:

Unsupported GeoJSON type: undefined

OpenLayers Версия: 6.2.1 Документы: https://openlayers.org/en/latest/apidoc/module-ol_format_GeoJSON-GeoJSON.html#writeFeature

Спасибо!

1 Ответ

2 голосов
/ 30 марта 2020

Так же как и массив функций с writeFeaturesObject, вы неправильно использовали geoJsonObject

const geoJsonObject = new GeoJSON().writeFeaturesObject([testFeature]);
console.log(geoJsonObject);

const importObject = new GeoJSON().readFeatures(geoJsonObject);
console.log(importObject);
...