vueはopenlayersを使用してスカイマップとガオードマップをロードする
2022-01-13 19:13:02
I. スカイマップ部分
1. vueにopenlayersをインストールする
npm i --save ol
ここには、次のように書かれています。
vue
は、scaffoldingをベースに構築されています。新しいページを作成することで、それは
vue
ファイルを作成し、ルートを設定します。そして、いよいよ自分のコードを直接入れて実行します。
<template>
<div class="wrapper">
<div>skymap</div>
<div class="map" id="olMap"></div>
</div>
</template>
<script>
import "ol/ol.css";
import {
Tile as TileLayer } from "ol/layer";
import XYZ from "ol/source/XYZ";
import {
defaults as defaultControls } from "ol/control";
import Map from "ol/Map.js";
import View from "ol/View.js";
export default {
data() {
return {
map: null,
parser: null,
};
},
mounted() {
this.initMap();
},
methods: {
initMap() {
const map = new Map({
target: "olMap",
view: new View({
center: [0, 0], // center point latitude and longitude
zoom: 4, // layer zoom size
projection: "EPSG:4326",
}),
controls: defaultControls({
zoom: true,
attribution: false,
rotate: false,
}),
});
this.map = map;
// Add a map
let url = "http://t{0-7}.tianditu.com/DataServer?x={x}&y={y}&l={z}";
url = `${
url}&T=vec_c&tk=replace your key`;
const source = new XYZ({
url: url,
projection: "EPSG:4326",
});
const tdtLayer = new TileLayer({
source: source,
});
this.map.addLayer(tdtLayer);
// Add a note
url = "http://t{0-7}.tianditu.com/DataServer?x={x}&y={y}&l={z}";
url = `${
url}&T=cva_c&tk=replace your key`;
const sourceCVA = new XYZ({
url: url,
projection: "EPSG:4326",
});
const tdtcvaLayer = new TileLayer({
source: sourceCVA,
});
this.map.addLayer(tdtcvaLayer);
},
},
};
</script>
<style scoped>
.map {
width: 100%;
height: 100vh;
}
</style>
スカイマップの表示準備が整いました。
レンダリング
2つ目は、高徳の地図部分
Sky Mapに比べ、Gaode Mapはとても使いやすいので、さっそくコードを見てみましょう
{{コード
この記事では、vueでopenlayersを使ってスカイマップとガオードマップを読み込む方法を紹介します。もっと関連するopenlayersを使ってスカイマップとガオードマップを読み込む方法は、BinaryDevelopの過去の記事を検索するか、以下の関連記事を引き続き閲覧してください。
関連
-
JSクロスドメインソリューション リアクト構成 リバースプロキシ
-
Vueがechartsのtooltipにクリックイベントを追加するケーススタディ
-
Vue Element-uiは、アイコンを追加するためのツリーコントロールノードを詳細に実装しています。
-
Vueはランニングライト形式のテキストを水平方向にスクロールする機能を実装している
-
Vue+ElementUIによる大規模なフォームの処理例
-
vue3.0プロジェクトのアーキテクチャを構築するための便利なツール
-
jQueryのコピーオブジェクトの説明
-
vue+webrtc(Tencent cloud)ライブ機能の実践を実現するために
-
vueにおけるv-forループオブジェクトのプロパティ
-
Vueでルートネスティングを実装する例
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
親子コンポーネント通信を解決する3つのVueスロット
-
vueネットワークリクエストソリューション ネイティブネットワークリクエストとjsネットワークリクエストライブラリ
-
vueディレクティブv-bindの使用と注意点
-
vue ディレクティブ v-html と v-text
-
vueの補間表現とv-textディレクティブの違いについて
-
vueが定義するプライベートフィルタと基本的な使い方
-
VUEグローバルフィルターの概念と留意点、基本的な使い方
-
vueのプロジェクトでモックを使用する方法を知っていますか?
-
Vueのフォームイベントのデータバインディングの説明
-
Vueの一般的な組み込みディレクティブの説明