当前位置: 首页 > news >正文

北京做网站建设的公司有哪些嵌入式开发培训哪家好

北京做网站建设的公司有哪些,嵌入式开发培训哪家好,正规网站做菠菜广告,网络软文范文基于上次文章做了优化和改良,保证在登录状态下才获取定位信息 uniapp 小程序实时且持续获取定位信息(全局设置一次)(单页面监听定位改变)(不采用定时器)_uniapp小程序定位_前端小胡兔的博客-CSDN博客本篇文章实现了uniapp 微信小程序实时获取定位信息,小程序打开即可持续获取定…基于上次文章做了优化和改良,保证在登录状态下才获取定位信息 uniapp 小程序实时且持续获取定位信息(全局设置一次)(单页面监听定位改变)(不采用定时器)_uniapp小程序定位_前端小胡兔的博客-CSDN博客本篇文章实现了uniapp 微信小程序实时获取定位信息,小程序打开即可持续获取定位信息, 位置更新也会触发相关自定义事件_uniapp小程序定位https://blog.csdn.net/weixin_44805839/article/details/131984957?utm_source%20%20uc_fansmsg 优点 只设置一次不采用定时器的方式无需多个页面调用单独页面若想获取当前位置是否变化 可单独设置监听,并调用不同逻辑事件根据登录状态区分是否调用(新增) 原理:  采用uniapp推出的: uni.onLocationChange(监听实时地理位置变化事件) 在app.vue中定义一次 且设置监听事件(便于独立页面监测定位改变并调用其他事件) 有关uni.onLocationChange的相关内容,不再赘述,详情见官网: uni.onLocationChange(FUNCTION CALLBACK) | uni-app官网uni-app,uniCloud,serverlesshttps://uniapp.dcloud.net.cn/api/location/location-change.html 实现: 1 持续获取定位 1.1 app.vue页面定义globalData(全局变量)和方法,并在onshow和onhide中调用 script//import httpApi from /utils/httpApi.js //自定义的接口文件 export default {globalData: {latitude: undefined,longitude: undefined,loginType: false, //登录状态 true为已登录},onLaunch: function() {console.log(App Launch)},onShow: function() {console.log(App Show)this.globalData.loginType uni.getStorageSync(token) ? true : false;this.updateLocationChange();},onHide: function() {console.log(App Hide)uni.stopLocationUpdate();},methods: {updateLocationChange: function() {if (!this.globalData.loginType) {console.log(没登录 不上传locationchange)return;}let that this;uni.startLocationUpdate({success: res {uni.onLocationChange(function(res2) {that.globalData.latitude res2.latitude;that.globalData.longitude res2.longitude;//然后调用上传经纬度接口 自行定义//httpApi.syncLocation(that.globalData.latitude, that.globalData//.longitude).then(res {});});},fail: err console.error(开启小程序接收位置消息失败, err),complete: msg console.log(调用开启小程序接收位置消息 API 完成)});},}} /scriptstyle/*每个页面公共css */ /style 1.2 在manifest.json文件源码中做相关配置 (重要设置startLocationUpdate和onLocationChange): mp-weixin : {appid : , //appidsetting : {urlCheck : false},usingComponents : true,permission : {scope.userLocation : {desc : 定位 //微信小程序获取location必填}},requiredPrivateInfos: [getLocation, //使用uni.getlocation才需声明startLocationUpdate, //必要onLocationChange //必要] }, 1.3 登录成功后调用: getApp().globalData.loginType true; //改变登录状态 getApp().updateLocationChange(); //开启上传位置 1.4 退出登录后修改登录状态: getApp().globalData.loginType false; 这样就做到登录后开启监听位置啦~ 2 监听globalData中的属性 在任意页面监听globalData中的数据实时变化,并调用定义的不同方法 2.1 在app.vue中定义 watch 方法,具体方法如下: // 监听全局变量变化(经纬度需要) 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; // 返回当前值}}) }, 2.2 使用 例如我想经纬度变化时 可以在页面这样操作: onLoad() {this.latitude getApp().globalData.latitude;this.longitude getApp().globalData.longitude;//实时获取当前位置getApp().watch(latitude, this.watchLocation);getApp().watch(longitude, this.watchLocation); }, methods: {//监听location变化回调watchLocation: function(name, value) {if (name latitude) {this.latitude value;}if (name longitude) {this.longitude value;}}, } 以上就是本篇文章的全部内容啦~ 欢迎小伙伴们一起探讨 一起进步~
http://www.dnsts.com.cn/news/245877.html

相关文章:

  • 备案期间关闭网站网站开发与设计作业
  • 现在哪个网站做电商好广州档案馆建设网站
  • 深圳制作网站软件深圳福田香格里拉大酒店
  • dedecms网站模板下载网站建设包括的内容
  • 网站广告图片在线制作舞钢网站建设
  • 做网站盈利方式广州网站建设联系电话
  • 诚信快捷小企业网站建设苏州区网站建设
  • 一般网站用什么软件做本地搭建wordpress
  • 河北住建城乡建设网站网站建设的开发方法有哪些
  • 网站建设创客沧州seo公司
  • 企业北京响应式网站制作泰安最新通知今天
  • 备案名 网站名源代码怎么做网站
  • net和cn哪个做网站好网站建设入门pdf
  • seo网站课程网站报备之后如何建设网站
  • 外贸谷歌网站推广黄石建设网站
  • 如何用自己电脑做网站页面欧式建筑网站
  • 高校英文网站建设 文献综述韩国做 mp4下载网站
  • iis网站数据库失败专做定制型网站
  • 怎样与知名网站做友情链接百度地图网页版入口
  • 山东有实力的网站开发多少钱图片搜索图片识别
  • 网站建设选择题短视频营销推广方案
  • 专业做邯郸网站优化wordpress带前端下载
  • 宜城网站建设重庆微信网站代理商
  • 从零学习做网站网站建设实施步骤
  • 做ptt网站网站建设需注意的问题
  • 网站 微信公众号 建设方案免费玩游戏
  • 网站建设一秒互联南昌网站排名优化软件
  • 外贸平台哪个网站最好知乎简约型网站
  • 糗事百科网站 源码平度那里有做网站的
  • 网站的反链怎么做做付费网站