0

我正在尝试使用没有 React 的 Deck.gl 设置 Nebulagl。然而,在绘制一个多边形后,这条线消失了。我正在用课堂风格写作。editableGeojasenlayer我认为在我控制台之后 geojson 没有更新。

    export class Panel  {
    constructor(viewer, container, id, title, options) {

    const layers = this.getLayers();
    const editableGeoJsonLayer = layers[0];

    this.deck = new Deck({
      initialViewState: INITIAL_VIEW_STATE,
      canvas: "deck",
      width: 300,
      height: 300,
      layers: layers,
      controller: {
        doubleClickZoom: false,
      },
      getCursor: editableGeoJsonLayer.getCursor.bind(editableGeoJsonLayer),
    });
  }

  getLayers() {
    const COUNTRIES =
      "https://d2ad6b4ur7yvpq.cloudfront.net/naturalearth-3.3.0/ne_50m_admin_0_scale_rank.geojson"; //eslint-disable-line
    let myFeatureCollection = {
      type: "FeatureCollection",
      features: [],
    };
    const layers = [
      new EditableGeoJsonLayer({
        id: "nebula",
        data: myFeatureCollection,
        selectedFeatureIndexes: [],
        mode: DrawPolygonMode,

        onEdit: ({ updatedData }) => {
          myFeatureCollection = updatedData;
          this.deck.setProps({ layers: this.getLayers() });
        },
      }),
    ];

    return layers;
  }
4

0 回答 0