国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

目錄
獲得高德地圖用戶Key
獲得當(dāng)前位置
獲取附近的點,只取前十個
首頁 微信小程序 小程序開發(fā) 淺析小程序中怎么引入高德地圖

淺析小程序中怎么引入高德地圖

Nov 23, 2021 pm 07:04 PM
小程序 高德地圖

小程序中怎么引入高德地圖?本篇文章給大家介紹一下在微信小程序中使用高德地圖的方法,希望對大家有所幫助!

淺析小程序中怎么引入高德地圖

獲得高德地圖用戶Key

沒有申請key需要先申請,進(jìn)入高德開發(fā)平臺 lbs.amap.com/ , 在 開發(fā)指南 -> 獲取key 中有詳細(xì)操作步驟,在 控制臺 -> 應(yīng)用管理 -> 我的應(yīng)用中可以查看我們創(chuàng)建的key?!鞠嚓P(guān)學(xué)習(xí)推薦:小程序開發(fā)教程

1.png

我們可以把key封裝在起來,這樣就不用每次都找了,在 lib文件夾下新建一個 config.js 文件

var config = {
  key: "你的key"
}
module.exports.config = config;

在js里導(dǎo)入 高德的js和key就可以調(diào)用高德地圖api了

var amapFile = require('../../lib/amap-wx.130.js'); //高德js
var config = require('../../lib/config.js'); //引用我們的配置文件

獲得當(dāng)前位置

創(chuàng)建高德地圖實例并命名為myAmapFun

var key = config.config.key;
var myAmapFun = new amapFile.AMapWX({
    key: key
});

調(diào)用 getRegeo 方法

myAmapFun.getRegeo({
    success: (data) => {
        //保存位置的描述信息( longitude經(jīng)度 latitude緯度 和位置信息 )
        let textData = {};
        textData.name = data[0].name;
        textData.desc = data[0].desc
        //將獲取的信息保存
        this.setData({
          textData: textData,
          longitude: data[0].longitude,
          latitude: data[0].latitude,
          // 給該經(jīng)度緯度加上icon做標(biāo)記,并調(diào)節(jié)大小
          markers: [{
            latitude: data[0].latitude,
            longitude: data[0].longitude,
            height: 30,
            width: 35,
            iconPath: '../../imgs/locationIcon/site1.png'
          }]
        })
      },
      fail: function(info){
        console.log("get Location fail");
      }    
    });

我們可以看下輸出成功的data,里面的信息我們根據(jù)自己的需要取

2.png

在wxml文件中將地圖顯示出來,這邊設(shè)置的是寬度100%,高度400px, scale是地圖的縮放比例

<view class="map_container">
  <map class="map" name="" longitude="{{longitude}}" latitude="{{latitude}}" scale="16"  show-location="true" markers="{{markers}}">
  </map>
</view>
<view class="map_text">
  <text class="h1">{{textData.name}}</text>
  <text>{{textData.desc}}</text>
</view>

紅色的標(biāo)記點就是markers的數(shù)據(jù);藍(lán)色的標(biāo)記點是show-location="true"展示的,但是真機預(yù)覽就沒有了

3.png

獲取附近的點,只取前十個

4.gif

data: {
    # 當(dāng)前位置經(jīng)度
    longitude: "",
    # 當(dāng)前位置緯度
    latitude: "",
    # 獲取位置的標(biāo)記信息
    markers: [],
    # 獲取位置的位置信息
    poisdatas : [],
    # 簡單展示信息使用的
    textData: {}
}

調(diào)用高德地圖的getPoiAround接口根據(jù)關(guān)鍵字獲取附近信息

get_current_PoiAround(){
    var key = config.config.key;
    var myAmapFun = new amapFile.AMapWX({
      key: key
    });
    // getRegeo 獲得當(dāng)前位置信息(上面有用到過這個方法)
    myAmapFun.getRegeo({
      success: (data) => {
        let textData = {};
        textData.name = data[0].name;
        textData.desc = data[0].desc
        this.setData({
          textData: textData,
          longitude: data[0].longitude,
          latitude: data[0].latitude,
        })
      },
      fail: function(info){
        console.log("get Location fail");
      }    
    });
    // 通過關(guān)鍵詞獲取附近的點
    myAmapFun.getPoiAround({
      // 改變icon圖標(biāo)的樣式,點擊前和點擊后的我都暫時設(shè)成blue.svg, 如果不設(shè)置的話,默認(rèn)就是一個紅色的小圖標(biāo)
      iconPath: &#39;../../icon/keshan/blue.svg&#39;,
      iconPathSelected: &#39;../../icon/keshan/blue.svg&#39;,
      // 搜索的關(guān)鍵字(POI分類編碼),在官方文檔https://lbs.amap.com/api/javascript-api/download/ 可以下載查看
      querykeywords: &#39;購物&#39;,
      querytypes: &#39;060100&#39;,
      success: (data) => {
        const markers = data.markers;
        const poisdatas = data.poisData;
        let markers_new = []
        markers.forEach((item, index) => {
          // 只取10個點,超過就continue了,forEach是不能使用break和continue關(guān)鍵字的
          if( index >= 10 ){
            return;
          }
          // 將我們需要的markers數(shù)據(jù)重新整理一下存入markers_new中
          markers_new.push({
            id: item.id,
            width: item.width,
            height: item.height,
            iconPath: item.iconPath,
            latitude: item.latitude,
            longitude: item.longitude,
            // 自定義標(biāo)記點上方的氣泡窗口
            // display | &#39;BYCLICK&#39;:點擊顯示; &#39;ALWAYS&#39;:常顯 |
            callout: {
              padding: 2,
              fontSize: 15,
              bgColor: "#f78063",
              color: &#39;#ffffff&#39;,
              borderRadius: 5,
              display: &#39;BYCLICK&#39;,
              content: poisdatas[index].name
            }
          })
        })
        //  將數(shù)據(jù)保存
        this.setData({
          markers: markers_new,
          poisdatas: poisdatas
        })
      },
      fail: function(info){
        wx.showModal({title:info.errMsg})
      }
    }) 
  },

調(diào)用getPoiAround接口返回成功的結(jié)果

5.png

6.png

bindmarkertap 激活 makertap圖標(biāo)點擊事件,改變map_text里面內(nèi)容

<view class="map_container">
  <map class="map" id="map" name="" longitude="{{longitude}}" latitude="{{latitude}}" scale="16"  show-location="true" markers="{{markers}}" bindmarkertap="makertap">
  </map>
  
</view>
<view class="map_text">
  <text class="h1">{{textData.name}}</text>
  <text wx:if="{{textData.distance != null}}">{{textData.distance}}m</text>
  <text>{{textData.desc}}</text>
</view>

makertap 激活showMarkerInfo展示標(biāo)記點信息,changeMarkerColor改變標(biāo)記點顏色

makertap(e) {
    var id = e.detail.markerId;
    this.showMarkerInfo(id);
    this.changeMarkerColor(id);
},

之前不是說poisdatas存放該點的位置信息嘛,我們拿到 id 就可以取出來存到textData里面顯示了

 // 展示標(biāo)記點信息
  showMarkerInfo(i) {
    const {poisdatas} = this.data;
    this.setData({
      textData: {
        name: poisdatas[i].name,
        desc: poisdatas[i].address,
        distance: poisdatas[i].distance
      }
    })
  },

如果是點擊的那個位置就把iconPath替換成orange.svg,其余都是blue.svg,并設(shè)置被點擊的氣泡 display為顯示('ALWAYS'),將修改后的數(shù)據(jù)重新保存就可以啦

// 改變標(biāo)記點顏色
  changeMarkerColor(index) {
    let {markers} = this.data;
    for (var i = 0; i < markers.length; i++) {
      if (i == index) {
        markers[i].iconPath = "../../icon/keshan/orange.svg"; 
        markers[i].callout.display = &#39;ALWAYS&#39;
      } else {
        markers[i].iconPath = "../../icon/keshan/blue.svg"; 
        markers[i].callout.display = &#39;BYCLICK&#39;
      }
    }
    this.setData({
      markers: markers
    })
  },

7.gif

更多編程相關(guān)知識,請訪問:編程入門??!

以上是淺析小程序中怎么引入高德地圖的詳細(xì)內(nèi)容。更多信息請關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

本站聲明
本文內(nèi)容由網(wǎng)友自發(fā)貢獻(xiàn),版權(quán)歸原作者所有,本站不承擔(dān)相應(yīng)法律責(zé)任。如您發(fā)現(xiàn)有涉嫌抄襲侵權(quán)的內(nèi)容,請聯(lián)系admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費脫衣服圖片

Undresser.AI Undress

Undresser.AI Undress

人工智能驅(qū)動的應(yīng)用程序,用于創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用于從照片中去除衣服的在線人工智能工具。

Clothoff.io

Clothoff.io

AI脫衣機

Video Face Swap

Video Face Swap

使用我們完全免費的人工智能換臉工具輕松在任何視頻中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的代碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

功能強大的PHP集成開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級代碼編輯軟件(SublimeText3)

高德地圖怎么注冊 高德地圖怎么注冊 Apr 08, 2024 pm 04:39 PM

1、首先在手機上安裝并打開高德地圖app,點擊【我的】并選擇【登錄/注冊】。2、根據(jù)需要選擇手機號、微信或支付寶注冊,按照提示填寫個人信息,包括手機號、密碼等。3、填寫完畢后,點擊【注冊】即可完成賬號注冊。4、之后,使用注冊時選擇的方式進(jìn)行登錄驗證,如通過手機號注冊,則需輸入手機號和密碼登錄。

高德地圖是不是要手機注冊 高德地圖是不是要手機注冊 May 05, 2024 pm 05:12 PM

是的,為了安全保障、個性化服務(wù)和賬號管理,高德地圖需要使用手機號碼注冊。注冊步驟包括:打開高德地圖應(yīng)用,點擊“我的”和“登錄/注冊”,選擇手機號碼注冊,輸入手機號碼獲取驗證碼,設(shè)置密碼即可完成注冊。

高德地圖導(dǎo)航?jīng)]有聲音怎么回事 高德地圖導(dǎo)航?jīng)]有聲音怎么回事 Apr 02, 2024 am 05:09 AM

高德地圖導(dǎo)航?jīng)]有聲音的原因包括揚聲器連接不當(dāng)、設(shè)備音量調(diào)低、高德地圖設(shè)置錯誤、后臺應(yīng)用干擾、手機靜音或震動模式、系統(tǒng)權(quán)限問題。解決方法依次為:檢查揚聲器連接;調(diào)整音量;檢查高德地圖設(shè)置;關(guān)閉后臺應(yīng)用;檢查手機模式;授予權(quán)限;重啟設(shè)備;更新高德地圖;聯(lián)系客服。

小米CarWith攜手高德地圖,開啟車道級導(dǎo)航新紀(jì)元 小米CarWith攜手高德地圖,開啟車道級導(dǎo)航新紀(jì)元 Apr 16, 2024 pm 08:34 PM

4月16日消息,近日,小米用戶迎來了一項實用的新功能——小米CarWith正式上線了高德地圖車道導(dǎo)航。此項服務(wù)的推出,無疑將為駕駛者帶來更為精準(zhǔn)、便捷的導(dǎo)航體驗。根據(jù)數(shù)據(jù),高德地圖與CarWith的集成實現(xiàn)了無縫對接,用戶無需進(jìn)行額外的軟件更新,即可直接體驗車道級導(dǎo)航的精準(zhǔn)指引。這一改進(jìn)很可能是在服務(wù)器端進(jìn)行的,為用戶省去了繁瑣的更新步驟。汽車道級導(dǎo)航是高德地圖的一項創(chuàng)新功能,它能在屏幕上高度還原真實的道路布局,清晰展示當(dāng)前道路的車道數(shù)量、地面標(biāo)識、出入口以及特殊車道等信息,為駕駛者提供更全面、

高德地圖改聲音在哪個地方 高德地圖改聲音在哪個地方 May 05, 2024 pm 05:30 PM

高德地圖的聲音更改可直接在應(yīng)用程序內(nèi)進(jìn)行:打開高德地圖應(yīng)用程序。點擊個人中心圖標(biāo)。進(jìn)入“設(shè)置”。找到“語音”設(shè)置。選擇您喜歡的語音包。提示:高德地圖提供多種語言和性別的聲音包,更改后需重啟應(yīng)用程序生效。

高德地圖叫車開發(fā)票的操作步驟 高德地圖叫車開發(fā)票的操作步驟 Apr 01, 2024 pm 10:10 PM

1、首先打開高德地圖,點擊【路線】。2、點擊【叫車】,點擊左旁【個人中心】。3、點擊【開發(fā)票】。4、勾選行程,然后點擊【開發(fā)票】即可。

怎么使用高德地圖開啟家人地圖與家人共享地圖    與家人共享地圖的方法步驟 怎么使用高德地圖開啟家人地圖與家人共享地圖 與家人共享地圖的方法步驟 May 04, 2024 pm 03:34 PM

  高德地圖APP是一款專業(yè)好用的免費地圖導(dǎo)航的軟件,大家非常的喜歡,這里都是擁有著各種各樣的一些功能,完全都能夠為我們的生活帶來極大的便利,什么一些地點的查詢,路線的規(guī)劃,查看到一些街景地圖,或者是經(jīng)緯度的查詢,這里都能為你們解決的,操作簡單便捷,超乎你們的想想哦,很多的一些時候,大家都是喜歡在這共享地圖,共享自己的位置信息,都感到更加的有安全感,十分不錯,很多的一些時候,對于自己家中的一些小孩或者是老人來說,他們出門的話,都是會讓人比較擔(dān)心,遇到各種的一些情況,避免大家會走丟的這一情況,就能

高德地圖出行記錄怎么查看 高德地圖出行記錄怎么查看 May 05, 2024 pm 05:21 PM

查看高德地圖出行記錄步驟:1. 登錄高德地圖;2. 進(jìn)入“我的”→“我的出行”;3. 查看出行記錄列表;4. 點擊查看詳情;5. 導(dǎo)出記錄(可選)。

See all articles