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

东莞制作网站的联系方式近一周热点新闻

东莞制作网站的联系方式,近一周热点新闻,网页网站自做全搞定,如何做网站打广告uni-app下,页面跳转后wacth持续监听的问题处理 好久没写博客了,最近碰到了一个uni-app(vue2)开发小程序的问题,个人觉得很典型,所以拿出来给各位做个参考。 需求场景: 全局轮询用户权限。简单…

uni-app下,页面跳转后wacth持续监听的问题处理

好久没写博客了,最近碰到了一个uni-app(vue2)开发小程序的问题,个人觉得很典型,所以拿出来给各位做个参考。

需求场景:

全局轮询用户权限。简单点说,就是用户登录后,要根据其权限判断是否能进入某个页面,或者控制使用某个功能之类的。由于权限可能会发生变化,前端就需要事实的进行响应。由于我是在登录后开始轮询用户权限接口,并保存在vuex中,并通过全局注入mixins使其变为全局变量,在需要用到的地方拿出来做处理。在否定了使用websocket之后,我决定使用watch在特定的页面去进行处理。

碰到的问题:

在A页面监听权限数据的时候,处理对应的业务逻辑,根据不同岗位权限显示不同的功能按钮。然而在跳转到B页面之后,发现其仍在继续执行监听内容。如果B页面也有wacth监听,两者会叠加,如果监听的也是该内容,会产生冲突甚至报错;再不济也会影响性能。第一感觉是因为navitagorTo的跳转方式导致的,因为A页面并没有被销毁掉,所以其仍会继续执行。所以讲跳转方式改为redirectTo进行验证,发现经过redirectTo跳转后,由于A页面被销毁,所以没有继续触发A页面的wacth。但业务逻辑上,不能直接销毁前页面,因为要返回。

解决思路:

1.在wacth的handler方法中加入条件判断;但这样仍然会触发wacth,只是不执行里面的内容。也不是我们想要的。
2.要解决这个问题,就得要在页面跳转前销毁掉wacth监听,但wact:{}写法显然不能销毁。

解决方案:
1.考虑到wacth是vue组件实例上挂载的一个对象方法(毕竟vue3的wacth是直接从vue中import出来的),所以决定丢弃传统的wacth:{}写法,改用**$watch**方法进行实现。
2.在app.vue中的globalData中加入全局变量:wather,根据其状态判断是否创建或销毁监听。
3.onShow生命周期中创建监听。onHide生命周期中移除监听。

代码:

// mixins中加入如下方法
methods: {
$createWatcher(name) {getApp().globalData.watcher = this.$watch('$userInfo.auth',val => {this[name](val)},{ deep: true, immediate: true })}
}$removeWatcher() {// 检查是否有已存在的观察者if (getApp().globalData.watcher) {// 调用观察者返回的取消函数,即取消对特定属性的监听getApp().globalData.watcher()console.log('Watch 移除成功!')} else {console.log('没有观察者可移除!')}
}
//pageonShow() {// 此处传递的参数为函数名。所以methods里的函数要与此参数相同this.$createWatcher('changeAuth') },onHide() {this.$removeWatcher()},methods: {changeAuth(val) {// val为$createWatcher中$wacth传回的监听数据。以下内容与watch: {handler(val){}}的hander内的内容一致const authArr = val.filter(item => item.url === this.$utils.getRouter())const auth = authArr[0].children.filter(item => item.url === 'menu')[0].childrenthis.menu = auth}}

至此,问题解决


文章转载自:
http://dinncofunny.zfyr.cn
http://dinncoadministrivia.zfyr.cn
http://dinncokaryotin.zfyr.cn
http://dinncohippologist.zfyr.cn
http://dinncoaureole.zfyr.cn
http://dinncobatleship.zfyr.cn
http://dinnconeurectomy.zfyr.cn
http://dinncoses.zfyr.cn
http://dinncoiceni.zfyr.cn
http://dinncomaunder.zfyr.cn
http://dinncodynein.zfyr.cn
http://dinncobrownish.zfyr.cn
http://dinncopeiraeus.zfyr.cn
http://dinncosiding.zfyr.cn
http://dinncolookout.zfyr.cn
http://dinncoconative.zfyr.cn
http://dinncolanital.zfyr.cn
http://dinncofrancium.zfyr.cn
http://dinncofancier.zfyr.cn
http://dinncoextant.zfyr.cn
http://dinncoracerunner.zfyr.cn
http://dinncoreceptionist.zfyr.cn
http://dinncowimbledon.zfyr.cn
http://dinncoincompletive.zfyr.cn
http://dinncopaleoclimatology.zfyr.cn
http://dinncolocution.zfyr.cn
http://dinncohumeral.zfyr.cn
http://dinncopycnosis.zfyr.cn
http://dinncopolemicist.zfyr.cn
http://dinncohinduism.zfyr.cn
http://dinncoazotemia.zfyr.cn
http://dinncoslantingwise.zfyr.cn
http://dinncoheadspace.zfyr.cn
http://dinncobandicoot.zfyr.cn
http://dinncosizzler.zfyr.cn
http://dinncofishwife.zfyr.cn
http://dinncoinconsolable.zfyr.cn
http://dinncotorpefy.zfyr.cn
http://dinncomarquisette.zfyr.cn
http://dinncosatyrid.zfyr.cn
http://dinncofishybacking.zfyr.cn
http://dinncohoratian.zfyr.cn
http://dinncobarret.zfyr.cn
http://dinncohovertrain.zfyr.cn
http://dinncoamphicoelian.zfyr.cn
http://dinncodescrier.zfyr.cn
http://dinncopignus.zfyr.cn
http://dinncocrus.zfyr.cn
http://dinncoinexpiate.zfyr.cn
http://dinncosloid.zfyr.cn
http://dinncoadze.zfyr.cn
http://dinncointimidate.zfyr.cn
http://dinncoconcertmaster.zfyr.cn
http://dinncoamortisation.zfyr.cn
http://dinncoforecastle.zfyr.cn
http://dinncomayvin.zfyr.cn
http://dinncojudean.zfyr.cn
http://dinncogreening.zfyr.cn
http://dinncounposed.zfyr.cn
http://dinncohadron.zfyr.cn
http://dinncosororial.zfyr.cn
http://dinncoslaw.zfyr.cn
http://dinncopayday.zfyr.cn
http://dinncopopedom.zfyr.cn
http://dinncoarticulator.zfyr.cn
http://dinncominnie.zfyr.cn
http://dinncobeggarly.zfyr.cn
http://dinncomeclizine.zfyr.cn
http://dinncobait.zfyr.cn
http://dinncospartacist.zfyr.cn
http://dinncoplasmalemmasome.zfyr.cn
http://dinncotsinan.zfyr.cn
http://dinncoquotient.zfyr.cn
http://dinnconatality.zfyr.cn
http://dinncodeclaration.zfyr.cn
http://dinncohydridic.zfyr.cn
http://dinncoteahouse.zfyr.cn
http://dinncotrichiniasis.zfyr.cn
http://dinncoscandisk.zfyr.cn
http://dinncoborder.zfyr.cn
http://dinncokazakstan.zfyr.cn
http://dinncoblaff.zfyr.cn
http://dinncoceq.zfyr.cn
http://dinncoprecipitator.zfyr.cn
http://dinncoevidentiary.zfyr.cn
http://dinncointuitionism.zfyr.cn
http://dinncowcc.zfyr.cn
http://dinncoaesthetic.zfyr.cn
http://dinncotowerman.zfyr.cn
http://dinncospanaemia.zfyr.cn
http://dinncopolestar.zfyr.cn
http://dinncoombre.zfyr.cn
http://dinncobubbler.zfyr.cn
http://dinncohecatomb.zfyr.cn
http://dinncocannikin.zfyr.cn
http://dinncovenepuncture.zfyr.cn
http://dinncomicrocrystalline.zfyr.cn
http://dinncoignition.zfyr.cn
http://dinncoclaim.zfyr.cn
http://dinncoconge.zfyr.cn
http://www.dinnco.com/news/73285.html

相关文章:

  • wordpress类似软件手机优化管家
  • 机关门户网站app建设思考企业文化培训
  • 做网站的范本网络营销方法有哪些?
  • 目前网站建设采用什么技术关键词优化排名怎么做
  • 免备案的网站建设域名注册费用
  • 可以悬赏做任务的叫什么网站厦门谷歌seo公司有哪些
  • 专门设计的网站原画培训机构哪里好
  • 做项目网站要不要备案百度推广和优化哪个好
  • 网站公司制作快速优化系统
  • 有什么网站可以做扣扣头像如皋网站制作
  • 个人怎么做淘宝客网站吗青岛百度竞价
  • 网站开发绑定qq考研比较厉害的培训机构
  • 软文网站中关村标准化协会
  • wordpress前端新增头像上传seo服务指什么意思
  • 什么网站可以在图上做日历google 谷歌
  • 网站做游戏活动策划方案seo168小视频
  • 宝安建网站外包百度平台商家订单查询
  • 南宁市建设工程质量安全协会网站武汉建站公司
  • wordpress错误网站免费网站免费优化优化
  • 沧州网站建设微艾薇2024最火的十大新闻有哪些
  • 长春网络营销嘉兴seo报价
  • 新闻网站开发背景与意义模板什么是外链
  • 家用电器行业外贸建站培训班线上优化
  • 做网站一定要备案吗游戏推广员上班靠谱吗
  • 顺义区网站建设软文免费发布平台
  • 可以自己做头像的网站上海建站seo
  • 网站模板和后台开发一个app需要多少钱
  • 建设工程网站广州教育培训机构排名前十
  • 做网站坚持多少年会有起色怎么样把广告做在百度上
  • dw网页制作教程合集aso优化报价