効果画像: 実装コード: <テンプレート> <div id="map" ref="map" style="幅: 100vw; 高さ: 100vh"></div> </テンプレート> <スクリプト> "ol/ol.css"をインポートします。 「ol」から { Map, View } をインポートします。 "ol/source" から { OSM、Vector を VectorSource としてインポートします。 「ol/layer」から { Vector を VectorLayer として、 Tile を TileLayer として } をインポートします。 「ol/format/GeoJSON」からGeoJSONをインポートします。 「ol/interaction/Select」からSelectをインポートします。 "ol/events/condition" から { altKeyOnly、click、pointerMove } をインポートします。 エクスポートデフォルト{ 名前: "gif", データ() { 戻る { マップ: {}, レイヤー: {}, geojsonデータ: タイプ: "FeatureCollection", 特徴: [ { タイプ: "機能", プロパティ: タイトル:「アラーム1」、 }, ジオメトリ: タイプ: "ポイント"、 座標: [91.48879670091165, 37.83814884701121], }, }, { タイプ: "機能", プロパティ: タイトル: 「アラーム2」、 }, ジオメトリ: タイプ: "ポイント"、 座標: [99.19515576149941, 26.713646654711134], }, }, { タイプ: "機能", プロパティ: タイトル: 「アラーム3」、 }, ジオメトリ: タイプ: "ポイント"、 座標: [123.74363825288785, 44.363694825734726], }, }, ]、 }, 選択: {}, }; }, マウント() { このメソッドは、次のとおりです。 }, メソッド: { // マップを初期化する initMap() { this.layer = 新しいVectorLayer({ ソース: 新しい VectorSource({ 機能: 新しい GeoJSON().readFeatures(this.geojsonData)、 })、 }); this.map = 新しいマップ({ ターゲット: "マップ"、 レイヤー: 新しいタイルレイヤー({ ソース: 新しい OSM()、 })、 このレイヤー、 ]、 ビュー: 新しいビュー({ 投影: "EPSG:4326", 中心: [104.912777, 34.730746], ズーム: 4.5, })、 }); this.select = 新しいSelect({ 条件: click, //クリックして選択}); this.map.addInteraction(this.select); this.select.on("選択", (e) => { let coordinate = e.mapBrowserEvent.coordinate; //選択された座標を取得します。let properties = e.selected[0].getProperties(); //現在のフィーチャのすべてのプロパティを取得します。}); // ベクター要素上のマウスのスタイルを設定します this.map.on("pointermove", (e) => { const isHover = this.map.hasFeatureAtPixel(e.pixel); this.map.getTargetElement().style.cursor = isHover ? "ポインター" : ""; }); }, }, }; </スクリプト> Vue+Openlayer で選択要素を使用する実装コードに関するこの記事はこれで終わりです。Vue Openlayer 選択要素に関するより関連性の高いコンテンツについては、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
<<: Dockerコンテナ同士を接続する3つの方法の詳しい説明
>>: MySQL レプリケーションの原理と実際のアプリケーションの詳細な説明
MySQL 5.7.x の最新バージョンをダウンロードしてインストールしました。デフォルトでは、on...
前提条件: Web開発者プラグインがインストールされている操作手順: [ツール] -> [We...
目次1. SQLコマンドを含むSQLスクリプトファイルを作成する2. SQLスクリプトファイルを実行...
vue2 プロジェクト開発の経験があれば、$refs に精通しているでしょう。 vue3 の急激なア...
目次スロットルと手ぶれ防止コンセプト:違いスロットリングの実装スロットル機能手ぶれ補正の実装手ぶれ防...
GNU Parallel は、1 台以上のコンピューター上で計算タスクを並列に実行するためのシェル ...
目次1. 親コンポーネントと子コンポーネントの関係2. 小道具3. $エミット4. $親V. 結論 ...
目次典型的なケース付録: 一般的なインデックス障害の状況典型的なケース次の構造を持つ 2 つのテーブ...
要件は、製品の評価データを渡すことであり、ページには対応する星の数が表示されます。 1. 異なる評価...
並べ替えの場合、order by は非常に頻繁に使用するキーワードです。インデックスに関するこれまで...
問題の説明VMware Workstationが新しい仮想マシンを作成し、64ビットオペレーティング...
SVG (Scalable Vector Graphics)は、XML 構文に基づいた画像形式です。...
目次序文積極的な撤退例外、拒否、および発行されたエラー信号まとめ序文NodeJS プロセスが終了する...
MySQL の replace と replace into はどちらも頻繁に使用される関数です。...
jQuery を使用してフェードインとフェードアウト効果を完成させる前に、まずいくつかのコードを理解...