本篇文章实现了uniapp 微信小程序实时获取定位信息,小程序打开即可持续获取定位信息, 位置更新也会触发相关自定义事件 tips: 如果需要做成区分登录状态的 看这篇优化后的文章: uniapp 持续获取定位(登录状态下才获取)(不采用定
本篇文章实现了uniapp 微信小程序实时获取定位信息,小程序打开即可持续获取定位信息, 位置更新也会触发相关自定义事件
tips: 如果需要做成区分登录状态的 看这篇优化后的文章:
uniapp 持续获取定位(登录状态下才获取)(不采用定时器)(任意页面都可监听定位改变)_前端小胡兔的博客-CSDN博客uniapp 持续获取定位(登录状态下才获取)(不采用定时器)(任意页面都可监听定位改变)https://blog.csdn.net/weixin_44805839/article/details/132106373?csdn_share_tail={"type":"blog","rType":"article","rId":"132106373","source":"weixin_44805839"}
有关"uni.onLocationChange"的相关内容,不再赘述,详情见官网:uni.onLocationChange(FUNCTION CALLBACK) | uni-app官网uni-app,uniCloud,serverlessHttps://uniapp.dcloud.net.cn/api/location/location-change.html
(重要设置"startLocationUpdate"和"onLocationChange"):
"mp-weixin" : {"appid" : "", //appid"setting" : {"urlCheck" : false},"usinGComponents" : true,"permission" : {"scope.userLocation" : {"desc" : "定位" //微信小程序获取location必填}},"requiredPrivateInfos": ["getLocation", //使用uni.getlocation才需声明"startLocationUpdate", //必要"onLocationChange" //必要]},
methods: {// 监听全局变量变化(经纬度需要)watch: function(variate, method) {var obj = this.globalData;let val = obj[variate]; // 单独变量来存储原来的值Object.defineProperty(obj, variate, {configurable: true,enumerable: true,set: function(value) {val = value; // 重新赋值if (method) {method(variate, value); // 执行回调方法}},get: function() {// 在其他界面调用getApp().globalData.variate的时候,这里就会执行。return val; // 返回当前值}})},},
onLoad() { //实时获取当前位置getApp().watch('latitude', this.watchLocation);getApp().watch('longitude', this.watchLocation);},
//监听location变化回调watchLocation: function(name, value) {console.log('name==' + name, value);if (name == 'latitude') {this.latitude = value;}if (name == 'longitude') {this.longitude = value;}},
这样就实现啦,如果本文帮助到你的话 记得点个赞哦~
来源地址:https://blog.csdn.net/weixin_44805839/article/details/131984957
--结束END--
本文标题: uniapp 小程序实时且持续获取定位信息(全局设置一次)(单页面监听定位改变)(不采用定时器)
本文链接: https://www.lsjlt.com/news/385830.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-01-21
2023-10-28
2023-10-28
2023-10-27
2023-10-27
2023-10-27
2023-10-27
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0