日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

高德地图 爬坑之旅

發(fā)布時間:2023/12/31 编程问答 63 豆豆
生活随笔 收集整理的這篇文章主要介紹了 高德地图 爬坑之旅 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

這一節(jié)主要是針對高德地圖的定位來說,我的需求是利用高德地圖來做詳細的定位,那么因為它的定位是異步執(zhí)行,并且定位成功后?做回調(diào),這里我就在想,把數(shù)據(jù)拿出來,做全局共享。

因為是第一次接觸,所以我傻乎乎的直接利用塊作用域去取值,結(jié)果就是,在值還沒有取回來之前,函數(shù)已經(jīng)執(zhí)行完畢,導致后面的數(shù)據(jù)并沒有被返回,為此我為這個問題糾結(jié)了2個小時,在朋友的提示下,

異步

對的,異步,那么我嘗試使用Promse來包容它的運行,然后在需要用到它的時候配合async/await來等待它完成取值,不言而喻。

完美解決了我取值的要求

export function Map(AMap){return new Promise((resolve,rejects) => {var map = new AMap.Map('container', {resizeEnable: true})map.plugin('AMap.Geolocation', function() {var geolocation = new AMap.Geolocation({// 是否使用高精度定位,默認:trueenableHighAccuracy: true,// 設(shè)置定位超時時間,默認:無窮大timeout: 10000,// 定位按鈕的停靠位置的偏移量,默認:Pixel(10, 20)buttonOffset: new AMap.Pixel(10, 20),// 定位成功后調(diào)整地圖視野范圍使定位位置及精度范圍視野內(nèi)可見,默認:falsezoomToAccuracy: true, // 定位按鈕的排放位置, RB表示右下buttonPosition: 'RB'})geolocation.getCurrentPosition()AMap.event.addListener(geolocation, 'complete', onComplete)AMap.event.addListener(geolocation, 'error', onError)})function onComplete (data) {// data是具體的定位信息resolve(data);}function onError (data) {// 定位出錯rejects(data);}}) }

使用

import {Map} from '../map/map';site = async () => {try {let result = await Map(window.AMap);console.log(result);} catch(err) {console.log(err);}}

?

獲得完美的結(jié)果

總結(jié)

以上是生活随笔為你收集整理的高德地图 爬坑之旅的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。