Heim  >  Artikel  >  Web-Frontend  >  So deaktivieren Sie einen Layer in der ArcGIS JavaScript API

So deaktivieren Sie einen Layer in der ArcGIS JavaScript API

PHPz
PHPzOriginal
2023-04-24 09:12:391109Durchsuche

Bei der Kartenentwicklung mithilfe der ArcGIS-JavaScript-API werden häufig einige Ebenen benötigt. Ein Layer ist ein Element auf der Kartenoberfläche, mit dem verschiedene geografische Dateninformationen angezeigt und beschrieben werden können. Wenn wir eine Ebene nicht anzeigen müssen, müssen wir sie deaktivieren. In diesem Artikel wird erläutert, wie Sie einen Layer in der ArcGIS-JavaScript-API deaktivieren.

  1. Holen Sie sich das Ebenenobjekt

Um eine Ebene zu schließen, müssen Sie zunächst das Objekt der Ebene abrufen. In der ArcGIS-JavaScript-API können Sie die Methode „map.getLayer()“ verwenden, um das Objekt eines Layers auf der Karte abzurufen. Der Parameter der Methode ist die ID des Layers, zum Beispiel:

var layer = map.getLayer("layerId");

wobei „layerId“ die ID ist der Schicht.

  1. Schließen Sie die Ebene

Nachdem wir das Ebenenobjekt erhalten haben, können wir die setVisibility()-Methode des Objekts verwenden, um die Ebene zu schließen. Der Parameter der setVisibility()-Methode ist ein boolescher Wert. True bedeutet, dass die Ebene angezeigt wird, und false bedeutet, dass die Ebene ausgeschaltet wird. Wenn Sie also eine Ebene deaktivieren möchten, verwenden Sie einfach den folgenden Code:

layer.setVisibility(false);

Dadurch wird die Ebene deaktiviert.

  1. Beispielcode

Hier ist ein vollständiger Beispielcode, der zeigt, wie eine Ebene deaktiviert wird:

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=no">
  <title>关闭图层</title>
  <link rel="stylesheet" href="https://js.arcgis.com/4.14/esri/themes/light/main.css">
  <script src="https://js.arcgis.com/4.14/"></script>
  <style>
    html,
    body,
    #viewDiv {
      margin: 0;
      padding: 0;
      height: 100%;
      width: 100%;
    }
  </style>
  <script>
    require([
      "esri/Map",
      "esri/views/MapView"
    ], function(Map, MapView) {
      var map = new Map({
        basemap: "streets"
      });

      var view = new MapView({
        container: "viewDiv",
        map: map,
        center: [-118.244,34.052],
        zoom: 12
      });

      view.when(function() {
        // 获取图层对象
        var layer = map.getLayer("layer1");
        // 关闭图层
        layer.setVisibility(false);
      });
    });
  </script>
</head>
<body>
  <div id="viewDiv"></div>
</body>
</html>

In diesem Beispielcode erstellen wir eine Ebene mit dem Namen „layer1“ und fügen sie dem Front-End-Code hinzu. Das Ebenenobjekt ist erhalten von . Verwenden Sie die when-Methode in der Ansicht, um einen Rückruf durchzuführen, wenn das Rendern der Ansicht abgeschlossen ist, und schließen Sie die Ebene Ebene 1 in der Rückruffunktion. Führen Sie den obigen Code aus und Sie können sehen, dass die Ebene erfolgreich geschlossen wurde.

  1. Zusammenfassung

In diesem Artikel wird erläutert, wie Sie Layer in der ArcGIS-JavaScript-API deaktivieren. Zuerst müssen Sie das zu deaktivierende Ebenenobjekt abrufen und dann die setVisibility()-Methode des Objekts verwenden, um die Ebene auszuschalten. Entwickler können diese Methode verwenden, um die Anzeige von Ebenen auf der Kartenoberfläche dynamisch zu steuern und so eine bessere Benutzererfahrung zu erzielen.

Das obige ist der detaillierte Inhalt vonSo deaktivieren Sie einen Layer in der ArcGIS JavaScript API. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn