腾讯位置服务---微信小程序JavaScript SDK

ゝ一纸荒年。 2022-01-12 11:43 519阅读 0赞

引入阿里巴巴适量图标实例:https://www.cnblogs.com/studyh5/p/10039360.html

小程序位置文档:https://developers.weixin.qq.com/miniprogram/dev/api/wx.openLocation.html

腾讯位置服务:https://lbs.qq.com/qqmap\_wx\_jssdk/index.html

wxml

  1. <view class="title">
  2. <navigator url="/pages/index/index">
  3. <text style="margin:0 30rpx;" class="iconfont back"></text>
  4. </navigator>
  5. <text>个人中心</text>
  6. </view>
  7. <view style="display:flex;margin-top:70rpx;">
  8. <view class="userinfo-avatar">
  9. <open-data type="userAvatarUrl"></open-data>
  10. </view>
  11. <view class="avatar-info">
  12. <view class="career">我是汽车维修技师</view>
  13. <view class="text">
  14. <open-data lang="zh_CN" type="userNickName"></open-data>
  15. </view>
  16. <view class="geography">我在{
  17. {avatar_city}}{
  18. {avatar_district}}为您的爱车服务</view>
  19. </view>
  20. </view>
  21. <view style="border-top:1rpx solid #eee;"></view>
  22. <view class="avatar-list">
  23. <view class="avatar-li">
  24. <text>我的主页</text>
  25. <text class="iconfont wodezhuye"></text>
  26. </view>
  27. <view class="avatar-li">
  28. <text>我的营销</text>
  29. <text class="iconfont kapianliebiao"></text>
  30. </view>
  31. <view class="avatar-li">
  32. <text>帮助</text>
  33. <text class="iconfont help"></text>
  34. </view>
  35. </view>
  36. <!--登录授权页面-->
  37. <view hidden="{
  38. {loginIsShow}}" class="loginwrap">
  39. <view class="login">
  40. <view class="loginInfor">
  41. <text class="infortext1">申请获取以下权限</text>
  42. <text class="infortext2" style="">获取您得公开信息(地理位置)</text>
  43. </view>
  44. <button bindtap="getUserLocation" open-type="getUserLocation" class="loginBtn">允许</button>
  45. </view>
  46. </view>
  47. js
  48. //logs.js
  49. var QQMapWX = require('../../utils/qqmap-wx-jssdk.js');
  50. var qqmapsdk;
  51. Page({
  52. data: {
  53. avatar_city:'',//avatar页面用来展示的city 例如:北京市
  54. avatar_district:'',//avatar页面用来展示的district 例如大兴区
  55. loginIsShow:true
  56. },
  57. onLoad: function () {
  58. var vm = this;
  59. wx.getSetting({
  60. success: function(res){
  61. /*console.log(res)*/
  62. if (res.authSetting['scope.userLocation'] == true) {
  63. vm.setData({
  64. loginIsShow:true
  65. });
  66. vm.getUserLocation()
  67. }else{
  68. vm.setData({
  69. loginIsShow:false
  70. });
  71. }
  72. }
  73. })
  74. },
  75. getUserLocation:function(){
  76. var _this = this;
  77. _this.setData({
  78. loginIsShow:true
  79. })
  80. qqmapsdk = new QQMapWX({
  81. key: '' //自己的key秘钥 http://lbs.qq.com/console/mykey.html 在这个网址申请
  82. });
  83. wx.getLocation({
  84. type: 'gcj02', // 返回可以用于wx.openLocation的经纬度
  85. success(res) {
  86. const latitude = res.latitude
  87. const longitude = res.longitude
  88. qqmapsdk.reverseGeocoder({
  89. location: {
  90. latitude: latitude,
  91. longitude: longitude
  92. },
  93. success: function (res) {
  94. console.log(res.result)
  95. _this.setData({
  96. avatar_city:res.result.ad_info.city,
  97. avatar_district:res.result.ad_info.district
  98. })
  99. }
  100. })
  101. }
  102. })
  103. }
  104. })
  105. wxss
  106. @import "../../style/iconfont.wxss";
  107. .fl{float:left;}
  108. .fr{float:right}
  109. .title{margin-top:100rpx;font-size:24rpx;display:flex;}
  110. .userinfo-avatar {overflow:hidden;display: block;width: 160rpx;height: 160rpx;margin: 20rpx;border-radius: 50%;border: 2px solid #fff;box-shadow: 3px 3px 10px rgba(0, 0, 0, 0.2);}
  111. .avatar-info{font-size:20rpx;color:rgb(163,163,163);margin:20rpx 0 0 60rpx;}
  112. .career{font-size:28rpx;font-weight:bold;color:#000;height:50rpx;line-height:50rpx;}
  113. .text,.geography{height:40rpx;line-height:40rpx;}
  114. .avatar-list{padding:30rpx 60rpx;font-size:20rpx;}
  115. .avatar-list .avatar-li{display:flex; justify-content: space-between;height:80rpx;line-height:80rpx;}
  116. /*登录授权页面*/
  117. .loginwrap{width:100%;height:100%;background:rgba(0,0,0,0.5);position:fixed;z-index:99;top:0;}
  118. .loginwrap .login{width:640rpx;height:400rpx;position:absolute;left:50%;top:50%;margin-left:-320rpx;margin-top:-200rpx;background:#fff;border-radius:10rpx;}
  119. .infortext1{width:100%;display:block;text-align:center;font-size:32rpx;color:rgba(192,191,193,1);background:rgba(247,247,247,1);height:130rpx;line-height:130rpx;font-weight:bold;}
  120. .infortext2{width:100%;display:block;text-align:center;font-size:28rpx;height:120rpx;line-height:120rpx;background:#fff;color:rgba(192,191,193,1);}
  121. .loginBtn{background:transparent;color:green;border-color:transparent;}
  122. .loginBtn::after{ border: none;}
  123. iconfont.wxss
  124. @font-face {
  125. font-family: 'iconfont'; /* project id 987889 */
  126. src: url('//at.alicdn.com/t/font_987889_ii3hns9f3vl.eot');
  127. src: url('//at.alicdn.com/t/font_987889_ii3hns9f3vl.eot?#iefix') format('embedded-opentype'),
  128. url('//at.alicdn.com/t/font_987889_ii3hns9f3vl.woff2') format('woff2'),
  129. url('//at.alicdn.com/t/font_987889_ii3hns9f3vl.woff') format('woff'),
  130. url('//at.alicdn.com/t/font_987889_ii3hns9f3vl.ttf') format('truetype'),
  131. url('//at.alicdn.com/t/font_987889_ii3hns9f3vl.svg#iconfont') format('svg');
  132. }
  133. .iconfont {
  134. font-family:"iconfont" !important;
  135. font-size:16px;
  136. font-style:normal;
  137. -webkit-font-smoothing: antialiased;
  138. -moz-osx-font-smoothing: grayscale;
  139. }
  140. .icon-avatar:before{content:"\e60b";font-size:50rpx;}
  141. .tianxie:before{content:"\e652";}
  142. .kapianliebiao:before{content:"\e626";}
  143. .help:before{content:"\e61b";}
  144. .wodezhuye:before{content:"\e608";}
  145. .back:before{content:"\e624"}

转载于:https://www.cnblogs.com/studyh5/p/10276782.html

发表评论

表情:
评论列表 (有 0 条评论,519人围观)

还没有评论,来说两句吧...

相关阅读