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

微信小程序 location API接口詳解及實例代碼

 更新時間:2016年10月12日 14:53:18   投稿:lqh  
這篇文章主要介紹了微信小程序 location API接口相關(guān)資料,這里詳細(xì)介紹了location API接口并附簡單實例代碼,需要的朋友可以參考下

 微信小程序 location API 接口:

現(xiàn)在微信小程序火了 ,利用假期時間學(xué)習(xí)了下,微信小程序的基礎(chǔ)知識,嘿嘿!

以下是記錄學(xué)習(xí)微信小程序 location API接口,并且寫了一個小實例來記錄,如有錯誤之處還請指正。

微信小程序的位置接口共有兩個:

1、wx.getLocation(OBJECT)獲取當(dāng)前的地理位置、速度。
2、wx.openLocation(OBJECT) 使用微信內(nèi)置地圖查看位置

然后,根據(jù)object參數(shù)說明,結(jié)合module模塊化重寫了下兩個接口在暴露出來引用,讓項目更加靈活管理。具體代碼如下:

location.js::

/** 
 * 獲取當(dāng)前的地理位置、速度。 
 * 1、fType:     默認(rèn)為 wgs84 返回 gps 坐標(biāo),gcj02 返回可用于wx.openLocation的坐標(biāo)   選填 
 * 2、cbSuccessFun: 接口調(diào)用成功的回調(diào)函數(shù),返回內(nèi)容詳見返回參數(shù)說明。 必填 
 * 3、cbFailFun:  接口調(diào)用失敗的回調(diào)函數(shù) 選填 
 * 4、cbCompleteFun:接口調(diào)用結(jié)束的回調(diào)函數(shù)(調(diào)用成功、失敗都會執(zhí)行) 選填 
 */ 
function getLocationFun(fType, cbSuccessFun, cbFailFun, cbCompleteFun){ 
  var getObj={}; 
  getObj.type="wgs84"; 
  if(fType){ 
    getObj.type=fType; 
  } 
  getObj.success=function(res){ 
    var _res=res; 
    if(cbSuccessFun){ 
      cbSuccessFun(_res); 
    } 
  } 
  getObj.fail=function(res){ 
    if(cbFailFun){ 
      cbFailFun(); 
    }else{ 
      console.log("getLocation fail:"+res.errMsg); 
    } 
  } 
  getObj.complete=function(res){ 
    if(cbCompleteFun){ 
      cbCompleteFun(); 
    } 
  } 
  wx.getLocation(getObj); 
} 
 
/** 
 * 使用微信內(nèi)置地圖查看位置 
 * 1、latitude:   緯度,范圍為-90~90,負(fù)數(shù)表示南緯 必填 
 * 2、longitude:  經(jīng)度,范圍為-180~180,負(fù)數(shù)表示西經(jīng) 必填 
 * 3、scale:    縮放比例,范圍1~28,默認(rèn)為28 選填 
 * 4、name:     位置名 選填 
 * 5、address:   地址的詳細(xì)說明 選填 
 * 6、cbSuccessFun: 接口調(diào)用成功的回調(diào)函數(shù) 選填 
 * 7、cbFailFun:  接口調(diào)用失敗的回調(diào)函數(shù) 選填 
 * 8、cbCompleteFun:接口調(diào)用結(jié)束的回調(diào)函數(shù)(調(diào)用成功、失敗都會執(zhí)行) 選填 
 */ 
function openLocationFun(latitude, longitude, scale, name, address, cbSuccessFun, cbFailFun, cbCompleteFun){ 
  var openObj={}; 
  openObj.latitude=latitude; 
  openObj.longitude=longitude; 
  openObj.scale=15; 
  if(scale>0 && scale<29){ 
    openObj.scale=scale; 
  } 
  if(name){ 
    openObj.name=name; 
  } 
  if(address){ 
    openObj.address=address; 
  } 
  openObj.success=function(res){ 
    if(cbSuccessFun){ 
      cbSuccessFun(); 
    } 
  } 
  openObj.fail=function(res){ 
    if(cbFailFun){ 
      cbFailFun(); 
    }else{ 
      console.log("openLocation fail:"+res.errMsg); 
    } 
  } 
  openObj.complete=function(res){ 
    if(cbCompleteFun){ 
      cbCompleteFun(); 
    } 
  } 
  wx.openLocation(openObj); 
} 
 
module.exports={ 
  getLocationFun: getLocationFun, 
  openLocationFun: openLocationFun 
} 

demo.js::

var comm = require( "../../common/common.js" ); 
var location=require('../../common/location.js'); 
Page( { 
 data: { 
  uploadImgUrls: [], 
  title: "" 
 }, 
 getlocation: function( e ) { 
  location.getLocationFun( 
   'gcj02',  
   function(cb){ 
    console.log(cb); 
    var _latitude=cb.latitude; 
    var _longitude=cb.longitude; 
    location.openLocationFun( 
     _latitude, 
     _longitude, 
     null, 
     "廈門觀音山", 
     "廈門觀音山匹克大廈", 
     null, 
     null, 
     null 
    ) 
   } 
  ) 
 }, 
 onLoad: function( options ) { 
  var _title = "ddd"; 
  if( options.title ) { 
   _title = options.title; 
  } 
  this.setData( { 
   title: _title 
  }) 
  console.log("load") 
  console.log( comm.formatDateFun( new Date(), 1 ) ); 
 }, 
 onShow:function(e){ 
  console.log("show"); 
 }, 
 onHide: function(e){ 
  console.log("hide"); 
 }, 
 onUnload:function(e){ 
  console.log("unload"); 
 } 
 // onReady: function(){ 
 //  wx.setNavigationBarTitle({ 
 //   title: this.data.title 
 //  }); 
 // } 
}) 

經(jīng)調(diào)試發(fā)現(xiàn)getLocation接口的type不管是傳遞wgs84還是gcj02返回的參數(shù)都是只有經(jīng)緯度,并沒有文檔上提到的速度和位置的精確度兩個參數(shù)

然后我在點擊“去這里”頁面跳轉(zhuǎn)后,發(fā)現(xiàn)每次都是提示定位失敗,不曉得是不是因為web開發(fā)工具的原因。而且好像經(jīng)緯度有差距,和本人實際距離不一致。還有定義了name和address兩個參數(shù)并沒有發(fā)現(xiàn)有啥變化,最后比較嚴(yán)重的問題是我點擊返回后提示page route錯誤,再次點擊按鈕,提示錯誤了,不能點擊。不知道什么原因?要怎么解決!


目前針對這個接口學(xué)習(xí)到這里,后續(xù)有其他發(fā)現(xiàn)或者解決辦法在來更新。

==============================================================================================

今天,微信發(fā)布新版本了【最新版本 0.10.101100】,對于位置接口也有進(jìn)一步的更新,

1、打開地圖接口在返回不會提示page route錯誤了

2、wx.openLocation接口傳遞自定義的name和address參數(shù)后,可以在地圖描述框,顯示出來了,不過經(jīng)緯度依然不夠準(zhǔn)確。點擊“去這里”依然是定位失敗。 


感謝閱讀,希望能幫助到大家,謝謝對本站的支持!

相關(guān)文章

  • JavaScript的八種數(shù)據(jù)類型

    JavaScript的八種數(shù)據(jù)類型

    這篇文章主要分享的是JavaScript的八種數(shù)據(jù)類型,ES5的時候,我們大家認(rèn)知的數(shù)據(jù)類型是?6種的,但是ES6?中新增了一種?Symbol,谷歌67版本中還出現(xiàn)了一種?bigInt,是指安全存儲、操作大整數(shù),像下面文章我可沒就來看看這八種數(shù)據(jù)類型的詳細(xì)介紹吧
    2022-01-01
  • threeJs實現(xiàn)波紋擴(kuò)散及光標(biāo)浮動效果詳解

    threeJs實現(xiàn)波紋擴(kuò)散及光標(biāo)浮動效果詳解

    這篇文章主要為大家介紹了threeJs實現(xiàn)波紋擴(kuò)散及光標(biāo)浮動效果詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-03-03
  • 微信小程序 template模板詳解及實例代碼

    微信小程序 template模板詳解及實例代碼

    這篇文章主要介紹了微信小程序 template模板詳解及實例代碼的相關(guān)資料,需要的朋友可以參考下
    2017-03-03
  • 前端通過JavaScript創(chuàng)建修改CAD圖形詳情

    前端通過JavaScript創(chuàng)建修改CAD圖形詳情

    這篇文章介紹JavaScript創(chuàng)建修改CAD圖形,創(chuàng)建修改CAD圖形,一般是基于AutoCAD進(jìn)行二次開發(fā),ObjectARX是AutoDesk公司針對AutoCAD平臺上的二次開發(fā)而推出的一個開發(fā)軟件包,它提供了以C++為基礎(chǔ)的面向?qū)ο蟮拈_發(fā)環(huán)境及應(yīng)用程序接口,能真正快速的訪問AutoCAD圖形數(shù)據(jù)庫
    2021-10-10
  • 微前端下element-ui彈框偏移問題解決

    微前端下element-ui彈框偏移問題解決

    本章主要是解決無界微前端環(huán)境下element-ui彈框偏移問題,如果你用的是其他微前端框架,且提供了jsloader這種預(yù)處理器,則可以舉一反三解決同樣的問題
    2023-08-08
  • 常用的JavaScript數(shù)組方法

    常用的JavaScript數(shù)組方法

    一說到JavaScript的數(shù)組,大家基本都能馬上想起pop()、push()、shift()、unshift()、indexof()等等,今天小編就給大家分享幾個開發(fā)中常用的js數(shù)組方法即他們的用法。需要的朋友可以參考下面文章的具體內(nèi)容
    2021-09-09
  • 微信小程序 Button 組件詳解及簡單實例

    微信小程序 Button 組件詳解及簡單實例

    這篇文章主要介紹了微信小程序 Button 組件詳解及簡單實例的相關(guān)資料,需要的朋友可以參考下
    2017-01-01
  • 微信公眾號  提示:Unauthorized API function 問題解決方法

    微信公眾號 提示:Unauthorized API function 問題解決方法

    這篇文章主要介紹了微信公眾號 提示:Unauthorized API function 問題解決方法的相關(guān)資料,這里提供了出現(xiàn)提示的解決方法,需要的朋友可以參考下
    2016-12-12
  • umi插件開發(fā)仿dumi項目加載markdown文件實現(xiàn)詳解

    umi插件開發(fā)仿dumi項目加載markdown文件實現(xiàn)詳解

    這篇文章主要為大家介紹了umi插件開發(fā)仿dumi項目加載markdown文件實現(xiàn)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-01-01
  • 微信小程序中使元素占滿整個屏幕高度實現(xiàn)方法

    微信小程序中使元素占滿整個屏幕高度實現(xiàn)方法

    這篇文章主要介紹了微信小程序中使元素占滿整個屏幕高度實現(xiàn)方法的相關(guān)資料,需要的朋友可以參考下
    2016-12-12

最新評論

施秉县| 衡阳县| 宁德市| 兰州市| 澳门| 巢湖市| 襄垣县| 玛多县| 齐河县| 河东区| 渑池县| 佛教| 贵港市| 平定县| 仁化县| 宁陕县| 双辽市| 章丘市| 麻栗坡县| 胶州市| 华亭县| 松原市| 兰考县| 施甸县| 乌鲁木齐县| 博客| 嘉兴市| 威远县| 平利县| 衡水市| 锦州市| 东丰县| 富阳市| 全椒县| 博爱县| 樟树市| 渑池县| 桐柏县| 吉安市| 宜兴市| 阿拉善盟|