VueはAmapを使用して都市の位置特定を実現

VueはAmapを使用して都市の位置特定を実現

この記事では、Amapを使用して都市の位置特定を実現するVueの具体的なコードを参考までに共有します。具体的な内容は次のとおりです。

フロントエンドの選択ボックスをクリックすると、マップサイトの選択ページに移動します。

<van-row class="address_item">
  <van-col span="6" class="item-title">配送先住所</van-col>
  <バン-コル span="18">
  <p class="item">
  <van-icon name="arrow" class="arrow"/>
  <van-icon name="location-o" />
  <span><van-field v-model="mapname" placeholder="クリックして選択" readonly v-on:click="mapaddress"/></span>
  </p>
  </バン-コル>
</van-row>

次にクリックイベントをトリガーします

マップアドレス(){
   et a=this.$route.query.id
  localStorage.setItem('names',this.names);
  localStorage.setItem('phone',this.phone);
  localStorage.setItem('addressDetail',this.addressDetail);
  localStorage.setItem('郵便番号',this.郵便番号);
  localStorage.setItem('checked',this.checked);
  this.$router.push({
    パス: '/mapLocation',
    クエリ: {id:a,are:this.are}
  })
}

3つの地図サイト選択ページ

Amapコンポーネントを埋め込むにはifarmをご利用ください。Amapマップを利用するにはキーの申請が必要ですので、申請の際はご自身のニーズに合わせてサービスを選択してください。

<テンプレート>
  <iframe id="getAddress" @load="iframeを読み込む"
    src="https://m.amap.com/picker/?keywords=オフィスビル、コミュニティ、学校&zoom=15&​​center=&radius=1000&total=20&key=申請したキー"
    スタイル="幅:100%; 高さ:100%;位置: 絶対;z-index:22222;">
  </iframe>
</テンプレート>

4. 地図が読み込まれたら、住所を選択して親ページに移動します

私の要件は、入力後に親ページにジャンプすることなので、親ページのフォームが更新され、キャッシュ処理が行われます。

ロードフレーム() {
  iframe = document.getElementById('getAddress').contentWindow; とします。
  iframe.postMessage('hello', 'https://m.amap.com/picker/');
  window.addEventListener("メッセージ", 関数(e) {
  if (e.data.command != "COMMAND_GET_TITLE") {
  //ビジネスコードを実装する let a=this.$route.query.id
  are = this.$route.query.are とします
  アドレス = e.data.address とします
  location = e.data.location とします
  名前 = e.data.name とする
  this.$router.push({
  パス: '/addressFill',
    クエリ: {address:住所、location:場所、name:名前、id:a、are:are}
  })

  }

  }.bind(this), false);
},

5. キャッシュ処理

サブマップ選択ページにジャンプすると、フォーム データはキャッシュに保存されます。サブページに戻ると、現在のページのフォーム データは更新されません。

localStorage.setItem('names',this.names);
localStorage.setItem('phone',this.phone);
localStorage.setItem('addressDetail',this.addressDetail);
localStorage.setItem('郵便番号',this.郵便番号);
localStorage.setItem('checked',this.checked);

6. キャッシュをクリアする

キャッシュは、ページがデータを返さない問題を解決しますが、同時に、このページのキャッシュは常に存在します。そのため、現在のページを返すときに検証が実行され、キャッシュがクリアされます。

addressDetail = localStorage.getItem('addressDetail'); を取得します。

if(addressDetail!=undefined&&addressDetail!=null&&addressDetail!=""){
  this.addressDetail=住所の詳細
  localStorage.removeItem("アドレスの詳細");
}それ以外{
  this.addressDetail=""
}

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Vue を使用した Amap アプリケーション開発のベスト プラクティス
  • vue+Amapは地図検索とクリック位置決め操作を実現します
  • VueでのAmap導入と軌跡描画の実装
  • VueはAMap Gaode Mapの実装コードを導入します
  • Vue でネイティブ Amap を使用する方法をご存知ですか?

<<:  mysql: [エラー] 不明なオプション '--skip-grant-tables'

>>:  Linux での JDK と Tomcat のアップロードと設定に関する詳細なチュートリアル

推薦する

MySQLインジェクションバイパスフィルタリング技術の概要

まず、GIF 操作を見てみましょう。ケース1: スペースがフィルタリングされるスペースの代わりに角括...

CentOS7にMySQL 8.0.26をインストールする手順

1. まず、お使いのマシンに応じて、MySQL 公式サイトから対応するデータベースをダウンロードしま...

JavaScriptはスクロールバーの位置を取得し、ページをアンカーポイントまでスライドします。

序文この記事は、私が最近仕事で遭遇した問題を記録したものです。アプリネイティブとフロントエンドのh5...

Web プロジェクト開発 JS 機能の手ぶれ補正とスロットリングのサンプル コード

目次安定導入手ぶれ補正シーン1(マウスの動き込み)手ぶれ補正シーン2(キーボードのキー)関数のスロッ...

MySQL で 1000 万件のレコードをすばやくクエリする方法

目次通常のページングクエリ最適化する方法大きなオフセット使用ID制限大量データ問題の最適化通常のペー...

JavaScript オブジェクトを作成する 3 つの方法

目次1. オブジェクトリテラル2. newキーワードはオブジェクトを作成する3. Object.cr...

Docker のコンテナ データ ボリュームの概要

目次Dockerコンテナのデータ量データボリュームの使用方法1: コマンド-vを使用して直接マウント...

さまざまなブラウザに対応するためにCSSで指定フォント@font-faceを導入する際の問題

Web ページを作成するときに、特定のフォントを使用したい場合は、 @font-faceを介して参照...

ApplicationHost.config (IIS ストレージ構成領域ファイル) の概要

新しく作成された Web サイトの場合は、ASP.NET MVC5 を例に挙げます。セッションを処理...

新しいウィンドウで開くジャンプメニュー、window.open の使い方の紹介

コードをコピーコードは次のとおりです。 <前> <div> <sele...

CentOS7でルートパスワードをリセットする方法

レンガを移動するプロセスでは、さまざまな環境および構成の問題があり、毎回異なるエラーが発生します。 ...

HTML スライドフローティングボールメニュー効果の実装

CSS スタイル html,本文{ 幅: 100%; 高さ: 100%; マージン: 0;パディング...

explainコマンドがMySQLデータを変更する理由

クエリで EXPLAIN を実行するとデータベースが変更されるかどうかを尋ねられた場合、おそらく「い...

MySQL 5.7 生成列の使用例の分析

この記事では、例を使用して、MySQL 5.7 で生成された列の使用方法を説明します。ご参考までに、...