効果画像: 実装コード: <テンプレート> <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 レプリケーションの原理と実際のアプリケーションの詳細な説明
目次初期ビューVue開発環境の構築Vueインスタンスの作成Vue テンプレート構文Vue データバイ...
目次序文リスナーと計算プロパティの違いvue3 で watch を使用するにはどうすればいいですか?...
MySQL で、id、a、b の 3 つのフィールドを持つ新しいテーブルを作成します。次のように、同...
目次序文導入ライブ使いやすいルートスコープマウント要素の指定ライフサイクルコンポーネントグローバル状...
序文この記事は主にMySQLの主キー0と主キー自己排除制約の関係を紹介し、皆さんの参考と学習のために...
序文前回の記事「MySQL ロック メカニズムの詳細説明」では、InnoDB のロック メカニズムに...
HTMLハイパーリンクaタグのhrefジャンプとonclickの実行関係htmlのaタグのhrefは...
目次無イメージの創造と混乱Noneオブジェクトをクリーンアップする方法トリムミラーコンテナで使用され...
1. docker設定ファイルを変更し、ポート2375を開きます。 [root@s162 docke...
お使いのコンピュータが Mac の場合、homebrew を使用して MySQL をインストールする...
1つ、 G:\MySQL\MySQL Server 5.7\bin> mysqld --ini...
目次開発中に発生した問題解決具体的な実装実績まとめバーチャルリストは、スクロールコンテナ要素の表示領...
コードをコピーコードは次のとおりです。 <スタイル タイプ="text/css&qu...
目次隠れた問題適応高さのソリューションまず解決策を提示してください。Vueスタックが必要な学生はvu...
序文JavaScript は習得が最も簡単な言語の 1 つであるため、成長と繁栄を続けており、市場に...