最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

react native 獲取地理位置的方法示例

 更新時(shí)間:2018年08月28日 14:24:36   作者:JsLin_  
這篇文章主要介紹了react native 獲取地理位置的方法示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧

react native 官網(wǎng)介紹了這個(gè) api Geolocation 但是這個(gè)api只能返回 經(jīng)緯度 所以要把經(jīng)緯度 通過逆地理位置轉(zhuǎn)義 http://recode.ditu.aliyun.com/jsdoc/geocode_api.html 可通過這個(gè)阿里的開放接口

在 react native 中,我們所用的是react native 自帶的api定位功能,無需引入第三方j(luò)s。

react native 定位是通過Geolocation這個(gè)模塊來實(shí)現(xiàn)的。想了解更多關(guān)于Geolocation的知識請點(diǎn)擊下面 Geolocation自行了解,這里我們主要將他的幾個(gè)方法。

static getCurrentPosition(geo_success, geo_error?, geo_options?)
Invokes the success callback once with the latest location info. Supported options: timeout (ms), maximumAge (ms), enableHighAccuracy (bool) On Android, this can return almost immediately if the location is cached or request an update, which might take a while.

static watchPosition(success, error?, options?)
Invokes the success callback whenever the location changes. Supported options: timeout (ms), maximumAge (ms), enableHighAccuracy (bool), distanceFilter(m)

static clearWatch(watchID)

第一個(gè)方法是獲取第一次定位時(shí)的位置信息,第一個(gè)為成功時(shí)的回掉函數(shù),還有error時(shí)的回掉,第三個(gè)是傳狀態(tài)的。
在請求成功函數(shù)中有以下屬性:

  • 經(jīng)度 : coords.longitude
  • 緯度 : coords.latitude
  • 準(zhǔn)確度 : coords.accuracy
  • 海拔 : coords.altitude
  • 海拔準(zhǔn)確度 : coords.altitudeAcuracy
  • 行進(jìn)方向 : coords.heading
  • 地面速度 : coords.speed
  • 時(shí)間戳 : new Date(position.timestamp)

在請求失敗函數(shù)中有4種情況(err.code狀態(tài)值):

1為用戶拒絕定位請問
2暫時(shí)獲取不到位置信息
3為請求超時(shí)
4未知錯(cuò)誤

第三個(gè)options是可選參數(shù),屬性如下:

enableHighAccuracy——指示瀏覽器獲取高精度的位置,默認(rèn)為false。當(dāng)開啟后,可能沒有任何影響,也可能使瀏覽器花費(fèi)更長的時(shí)間獲取更精確的位置數(shù)據(jù)。

timeout——指定獲取地理位置的超時(shí)時(shí)間,默認(rèn)不限時(shí)。單位為毫秒。

maximumAge——最長有效期,在重復(fù)獲取地理位置時(shí),此參數(shù)指定多久再次獲取位置。默認(rèn)為0,表示瀏覽器需要立刻重新計(jì)算位置。

static watchPosition(success, error?, options?) 

是多次改變了位置信息時(shí)才會觸發(fā),一般觸發(fā)的可能性可能用戶多次刷新數(shù)據(jù),如一個(gè)人行車到其他城市,這時(shí)如果設(shè)置一個(gè)監(jiān)聽函數(shù),只要watchid不一樣,就會不斷的觸發(fā)

由于可能會出現(xiàn)緩存的情況,所以Geolocation 為我們提供了一個(gè)可以清除緩存的方法watchPosition(),改方法是 用于上一次的定位信息進(jìn)行清除的。

對了,要啟動(dòng)react native 的定位功能的話,如果你是android 用戶,你需要先在AndroidManifest.xml中加入以下權(quán)限

<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

具體實(shí)現(xiàn)

import Geolocation from 'Geolocation';

  ......

 getlocal() {
  Geolocation.getCurrentPosition(
   val => {
    let ValInfo =
     '速度:' +
     val.coords.speed +
     '\n經(jīng)度:' +
     val.coords.longitude +
     '\n緯度:' +
     val.coords.latitude +
     '\n準(zhǔn)確度:' +
     val.coords.accuracy +
     '\n行進(jìn)方向:' +
     val.coords.heading +
     '\n海拔:' +
     val.coords.altitude +
     '\n海拔準(zhǔn)確度:' +
     val.coords.altitudeAccuracy +
     '\n時(shí)間戳:' +
     val.timestamp;
    this.setState({ LocalPosition: ValInfo });
    console.log("打印地理位置:"+`${val.coords.longitude},${val.coords.latitude}`)
    GET_GPRS({
     "l":`${val.coords.latitude},${val.coords.longitude}`,
     "type":111,
    }).then(res => {
     console.log(JSON.stringify(res))
    })
   },
   val => {
    let ValInfo = '獲取坐標(biāo)失敗:' + val;
    this.setState({ LocalPosition: ValInfo }); //如果為空的話 沒允許開啟定位服務(wù)

   },
  );
 }

這里的 GET_GPRS 是自己封裝的 fech請求

記得開啟 位置訪問權(quán)限

打印結(jié)果如下:

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • react-native 配置@符號絕對路徑配置和絕對路徑?jīng)]有提示的問題

    react-native 配置@符號絕對路徑配置和絕對路徑?jīng)]有提示的問題

    本文主要介紹了react-native 配置@符號絕對路徑配置和絕對路徑?jīng)]有提示的問題,文中通過圖文示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-01-01
  • 淺談React Component生命周期函數(shù)

    淺談React Component生命周期函數(shù)

    React組件有哪些生命周期函數(shù)?類組件才有的生命周期函數(shù),分為幾個(gè)階段:掛載,更新,卸載,錯(cuò)誤處理,本文主要介紹了這個(gè)階段,感興趣的可以了解一下
    2021-06-06
  • React通過classnames庫添加類的方法

    React通過classnames庫添加類的方法

    這篇文章主要介紹了React通過classnames庫添加類,在vue中添加class是一件非常簡單的事情,你可以通過傳入一個(gè)對象, 通過布爾值決定是否添加類,本文給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-09-09
  • ReactJS中的自定義組件實(shí)例代碼

    ReactJS中的自定義組件實(shí)例代碼

    React 是一個(gè)用于構(gòu)建用戶界面的 JAVASCRIPT 庫。這篇文章主要介紹了ReactJS中的自定義組件的代碼講解,需要的朋友可以參考下
    2019-11-11
  • ReactNative列表ListView的用法

    ReactNative列表ListView的用法

    本篇文章主要介紹了ReactNative列表ListView的用法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-08-08
  • Hello?React的組件化方式之React入門小案例演示

    Hello?React的組件化方式之React入門小案例演示

    這篇文章主要介紹了Hello?React的組件化方式-React入門小案例,本文通過Hello?React的案例,?來體驗(yàn)一下React開發(fā)模式,?以及jsx的語法,需要的朋友可以參考下
    2022-10-10
  • React中遍歷數(shù)組生成標(biāo)簽問題

    React中遍歷數(shù)組生成標(biāo)簽問題

    這篇文章主要介紹了React中遍歷數(shù)組生成標(biāo)簽問題,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-01-01
  • react+ant design實(shí)現(xiàn)Table的增、刪、改的示例代碼

    react+ant design實(shí)現(xiàn)Table的增、刪、改的示例代碼

    這篇文章主要介紹了react+ant design實(shí)現(xiàn)Table的增、刪、改的示例代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2018-12-12
  • react+axios實(shí)現(xiàn)github搜索用戶功能(示例代碼)

    react+axios實(shí)現(xiàn)github搜索用戶功能(示例代碼)

    這篇文章主要介紹了react+axios實(shí)現(xiàn)搜索github用戶功能,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-09-09
  • react 通過后端接口實(shí)現(xiàn)路由授權(quán)的示例代碼

    react 通過后端接口實(shí)現(xiàn)路由授權(quán)的示例代碼

    本文主要介紹了React應(yīng)用中通過后端接口獲取路由授權(quán),實(shí)現(xiàn)動(dòng)態(tài)和靈活的權(quán)限管理,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-11-11

最新評論

泉州市| 深水埗区| 伽师县| 昆明市| 鄂伦春自治旗| 湘潭县| 铅山县| 山东省| 鄂伦春自治旗| 西青区| 南昌市| 郑州市| 巴彦淖尔市| 吴忠市| 太原市| 普宁市| 富川| 荃湾区| 舞阳县| 宜兴市| 秭归县| 嘉禾县| 卓尼县| 惠东县| 长葛市| 呼伦贝尔市| 巧家县| 甘孜县| 东源县| 巴青县| 石泉县| 东台市| 合阳县| 恩施市| 德兴市| 承德县| 岳阳县| 黔西县| 象州县| 康保县| 芦山县|