关于微信小程序 location API接口的解析

这篇文章主要介绍了微信小程序 location api接口相关资料,这里详细介绍了location api接口并附简单实例代码,需要的朋友可以参考下

 微信小程序 location API 接口:

现在微信专业系统搭建点我wcqh.cn小程序火了 ,利用假期时间学习了下,微信小程序的基础知识,嘿嘿!

以下是记录学习微信小程序 location API接口,并且写了一个小实例来记录,如有错误之处还请指正。

微信小程序的位置接口共有两个:

1专业系统搭建点我wcqh.cn、wx.getLocation(OBJECT)获取当前的地理位置、速度。

2、wx.openLocation(OBJECT) 使用微信内置地图查看位置

然后,根据object参数说明,结合module模块专业系统搭建点我wcqh.cn化重写了下两个接口在暴露出来引用,让项目更加灵活管理。具体代码如下:

location.js::

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31专业系统搭建点我wcqh.cn

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81专业系统搭建点我wcqh.cn

82

83

/**

* 获取当前的地理位置、速度。

* 1、fType:     默认为 wgs84 返回 gps 坐标,gcj02 返回可用于wx.openLocation的坐标   选填

* 2、cbSuc专业系统搭建点我wcqh.cncessFun: 接口调用成功的回调函数,返回内容详见返回参数说明。 必填

* 3、cbFailFun:  接口调用失败的回调函数 选填

* 4、cbCompleteFun:接口调用结束的回调函数(调用成专业系统搭建点我wcqh.cn功、失败都会执行) 选填

*/

function getLocationFun(fType, cbSuccessFun, cbFailFun, cbCompleteFun){

var getObj={};

g专业系统搭建点我wcqh.cnetObj.type=”wgs84″;

if(fType){

getObj.type=fType;

}

getObj.success=function(res){

var _res=res;

if(cbSucce专业系统搭建点我wcqh.cnssFun){

cbSuccessFun(_res);

}

}

getObj.fail=function(res){

if(cbFailFun){

cbFailFun();

}else{

console.log(“g专业系统搭建点我wcqh.cnetLocation fail:”+res.errMsg);

}

}

getObj.complete=function(res){

if(cbCompleteFun){

cbCompleteFun();

}

}

wx专业系统搭建点我wcqh.cn.getLocation(getObj);

}

/**

* 使用微信内置地图查看位置

* 1、latitude:   纬度,范围为-90~90,负数表示南纬 必填

* 2、longitude:  经度,范围为-专业系统搭建点我wcqh.cn180~180,负数表示西经 必填

* 3、scale:    缩放比例,范围1~28,默认为28 选填

* 4、name:     位置名 选填

* 5、address:   地址的详细说明 选填

* 6、专业系统搭建点我wcqh.cncbSuccessFun: 接口调用成功的回调函数 选填

* 7、cbFailFun:  接口调用失败的回调函数 选填

* 8、cbCompleteFun:接口调用结束的回调函数(调用成功、失败都会执行)专业系统搭建点我wcqh.cn 选填

*/

function openLocationFun(latitude, longitude, scale, name, address, cbSuccessFun, cbFailFun, cb专业系统搭建点我wcqh.cnCompleteFun){

var openObj={};

openObj.latitude=latitude;

openObj.longitude=longitude;

openObj.scale=15;

i专业系统搭建点我wcqh.cnf(scale>0 && scale<29){

openObj.scale=scale;

}

if(name){

openObj.name=name;

}

if(address){

openObj.address=专业系统搭建点我wcqh.cnaddress;

}

openObj.success=function(res){

if(cbSuccessFun){

cbSuccessFun();

}

}

openObj.fail=function(res){专业系统搭建点我wcqh.cn

if(cbFailFun){

cbFailFun();

}else{

console.log(“openLocation fail:”+res.errMsg);

}

}

openObj.complete=func专业系统搭建点我wcqh.cntion(res){

if(cbCompleteFun){

cbCompleteFun();

}

}

wx.openLocation(openObj);

}

module.exports={

getLocationF专业系统搭建点我wcqh.cnun: getLocationFun,

openLocationFun: openLocationFun

}

登录后复制

demo.js::

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

2专业系统搭建点我wcqh.cn2

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

var comm = require( “../../common/com专业系统搭建点我wcqh.cnmon.js” );

var location=require(&#39;../../common/location.js&#39;);

Page( {

data: {

uploadImgUrls: [],

t专业系统搭建点我wcqh.cnitle: “”

},

getlocation: function( e ) {

location.getLocationFun(

&#39;gcj02&#39;, 

function(cb){

console.l专业系统搭建点我wcqh.cnog(cb);

var _latitude=cb.latitude;

var _longitude=cb.longitude;

location.openLocationFun(

_latitude,

_lon专业系统搭建点我wcqh.cngitude,

null,

“厦门观音山”,

“厦门观音山匹克大厦”,

null,

null,

null

)

}

)

},

onLoad: function( options ) {

var _title = “ddd”;

i专业系统搭建点我wcqh.cnf( options.title ) {

_title = options.title;

}

this.setData( {

title: _title

})

console.log(“load”)

console专业系统搭建点我wcqh.cn.log( comm.formatDateFun( new Date(), 1 ) );

},

onShow:function(e){

console.log(“show”);

},

onHide: funct专业系统搭建点我wcqh.cnion(e){

console.log(“hide”);

},

onUnload:function(e){

console.log(“unload”);

}

// onReady: function(){

//  专业系统搭建点我wcqh.cnwx.setNavigationBarTitle({

//   title: this.data.title

//  });

// }

})

登录后复制

经调试发现getLocation接口的type不管是传递w专业系统搭建点我wcqh.cngs84还是gcj02返回的参数都是只有经纬度,并没有文档上提到的速度和位置的精确度两个参数

然后我在点击“去这里”页面跳转后,发现每次都是提示定位失败,不晓得是不是因为web开发工具的原因。而且好像经专业系统搭建点我wcqh.cn纬度有差距,和本人实际距离不一致。还有定义了name和address两个参数并没有发现有啥变化,最后比较严重的问题是我点击返回后提示page route错误,再次点击按钮,提示错误了,不能点击。不知道专业系统搭建点我wcqh.cn什么原因?要怎么解决!

目前针对这个接口学习到这里,后续有其他发现或者解决办法在来更新。

=========================================================专业系统搭建点我wcqh.cn=====================================

今天,微信发布新版本了【最新版本 0.10.101100】,对于位置接口也有进一步的更新,

1、打开地图接口在返回不会提示pag专业系统搭建点我wcqh.cne route错误了

2、wx.openLocation接口传递自定义的name和address参数后,可以在地图描述框,显示出来了,不过经纬度依然不够准确。点击“去这里”依然是定位失败。 

以上就是本文的专业系统搭建点我wcqh.cn全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!

相关推荐:

微信小程序中Video API的解析

关于微信小程序的选择器(时间,日期,地区)的解析

微信小程序通过api接口将json数据专业系统搭建点我wcqh.cn展现到小程序

以上就是关于微信小程序 location API接口的解析的详细内容,更多请关注php中文网其它相关文章!

© 版权声明
THE END
喜欢就支持一下吧
点赞997 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容